Page MenuHomeIn-Portal Phabricator

modern-store
No OneTemporary

File Metadata

Created
Sun, Apr 20, 2:03 AM

modern-store

Index: branches/1.0.x/products/compare.tpl
===================================================================
--- branches/1.0.x/products/compare.tpl (revision 15042)
+++ branches/1.0.x/products/compare.tpl (revision 15043)
@@ -1,204 +1,204 @@
<!--##
<NAME>Compare Products</NAME>
<DESC>Product comparison page</DESC>
<SECTION>Pages||Compare Products</SECTION>
##-->
<inp2:m_DefineElement name="page_title"><inp2:st_PageInfo type="htmlhead_title" html_escape="1"/></inp2:m_DefineElement>
<!--## MAIN CONTENT ##-->
<inp2:m_DefineElement name="content">
- <inp2:p_InitList list_name="compare_products" types="compare" parent_cat_id="any" per_page="3"/>
+ <inp2:p_InitList list_name="compare_products" types="compare" parent_cat_id="any"/>
<inp2:m_ifnot check="p_TotalRecords" list_name="compare_products">
<inp2:p_ContinueLink redirect="1"/>
</inp2:m_ifnot>
<div class="block no-border-bottom">
<h2><em>Comparing Products (<abbr id="product-count"><inp2:p_TotalRecords list_name="compare_products"/></abbr>)</em><span></span></h2>
<div class="compare border-radius">
<inp2:m_DefineElement name="product_compare_header">
<div class="good-item" product_id="<inp2:Field name='ProductId'/>" position="<inp2:m_Param name='num'/>">
<div class="button-delete"><a href="#"><img src="<inp2:m_TemplatesBase/>img/icon-delete.png" width="13" height="13" alt="" /></a></div>
<dl>
<dt><a href="<inp2:ProductLink template='__default__'/>"><inp2:Field name="Name"/></a></dt>
<dd>
<p class="img">
<a href="<inp2:ProductLink template='__default__'/>">
<inp2:Image render_as="image_element" Primary="1" Thumbnail="1" DefaultImage="img/no_picture.gif" MaxWidth="136" MaxHeight="136"/>
</a>
</p>
<p class="price"><inp2:Field name="Price" currency="selected" decimal_tag="span"/></p>
<p>
<a href="<inp2:AddToCartLink template='elements/ajax/cart_bubble' product_template='__default__'/>" class="addtocart" rel="nofollow">
<inp2:m_if check="Field" name="HasRequiredOptions" db="db">
<span>Click to See</span>
<inp2:m_else/>
<span>Add to Cart</span>
</inp2:m_if>
</a>
</p>
</dd>
</dl>
<div class="rating">
<p>
<inp2:VotesIndicator small_style="small-star"/>
</p>
<p><a href="<inp2:ProductLink template='__default__' anchor='reviews'/>">Reviews</a> (<a href="<inp2:ProductLink template='__default__' anchor='reviews'/>"><inp2:Field name="CachedReviewsQty"/></a>)</p>
</div>
<dl class="har">
<dt>Model:</dt>
<dd>XT2324</dd>
<inp2:m_if check="p_Field" name="ManufacturerId" db="db">
<dt>Manufacturer:</dt>
<dd><inp2:Field name="ManufacturerId"/></dd>
</inp2:m_if>
<dt>SKU:</dt>
<dd><inp2:Field name="SKU"/></dd>
<dt>Size:</dt>
<dd>22''</dd>
</dl>
</div>
</inp2:m_DefineElement>
<inp2:p_PrintList render_as="product_compare_header" list_name="compare_products"/>
<div id="add-product" class="good-item last-child" <inp2:m_ifnot check="p_TotalRecords" list_name="compare_products" equals_to="0|1|2"> style="display: none;"</inp2:m_ifnot>>
<p class="buttons-block"><a href="<inp2:p_ContinueLink/>" class="compare-button"><span><img src="<inp2:m_TemplatesBase/>img/bg-button-compare-add.png" width="24" height="24" alt="" /><br />Select Product<br />to Compare</span></a></p>
</div>
<div class="clear"></div>
<div id="compare-menu" style="width: 678px;">
<inp2:m_if check="p_HasCompareField" name="Description" list_name="compare_products">
<h3><a href="#">Description</a></h3>
<div>
<inp2:m_DefineElement name="product_compare_description">
<div class="good-item-cell">
<div class="description">
<p><inp2:Field name="Description"/></p>
</div>
</div>
</inp2:m_DefineElement>
<inp2:p_PrintList render_as="product_compare_description" list_name="compare_products"/>
<div class="clear"></div>
</div>
</inp2:m_if>
<inp2:m_if check="p_HasCompareField" name="cust_Features" list_name="compare_products">
<h3><a href="#">Features</a></h3>
<div>
<inp2:m_DefineElement name="product_compare_features">
<div class="good-item-cell">
<div class="description">
<p><inp2:Field name="cust_Features"/></p>
</div>
</div>
</inp2:m_DefineElement>
<inp2:p_PrintList render_as="product_compare_features" list_name="compare_products"/>
<div class="clear"></div>
</div>
</inp2:m_if>
<!--<h3><a href="#">Details</a></h3>
<div></div>
<h3><a href="#">Specifications</a></h3>
<div></div>
<h3><a href="#">Overall Rating</a></h3>
<div></div>-->
<inp2:m_if check="p_HasCompareField" name="CachedReviewsQty" list_name="compare_products">
<h3><a href="#">Reviews</a></h3>
<div>
<inp2:m_DefineElement name="product_compare_reviews">
<div class="good-item-cell">
<div class="description">
<p class="reviews">
<inp2:m_DefineElement name="short_review_element">
<div class="row-review">
<p class="user"><inp2:Field name="ReviewedBy"/></p>
<div class="text-review"><inp2:Field name="ReviewText"/></div>
</div>
</inp2:m_DefineElement>
<inp2:rev_PrintList render_as="short_review_element" per_page="-1" requery="1"/>
</p>
</div>
</div>
</inp2:m_DefineElement>
<inp2:p_PrintList render_as="product_compare_reviews" list_name="compare_products"/>
<div class="clear"></div>
</div>
</inp2:m_if>
</div>
<div class="clear"></div>
</div>
</div>
</inp2:m_DefineElement>
<!--## /MAIN CONTENT ##-->
<inp2:m_DefineElement name="add_to_head">
<script type= "text/javascript">
$(document).ready(
function() {
var icons = {header: 'ui-icon-circle-arrow-e', headerSelected: 'ui-icon-circle-arrow-s'};
$( '#compare-menu' ).accordion({
icons: icons,
autoHeight: false,
navigation: true
});
$('.button-delete').click(
function ($e) {
var $me = $(this),
$header = $me.parent(),
$position = $header.attr('position');
compare_product($header.attr('product_id'), false);
$header.remove();
$('h3', '#compare-menu').next('div').each(
function () {
$('.good-item-cell:nth-child(' + $position + ')', this).remove();
}
);
$('#product-count').html( parseInt($('#product-count').text()) - 1 );
// renumber positions, since they were shifted
var $index = 1;
$('.button-delete').parent().each(
function () {
$(this).attr('position', $index++);
}
);
$('#add-product').show();
return false;
}
);
}
);
</script>
</inp2:m_DefineElement>
<!--## DESIGN TEMPLATE ##-->
<inp2:m_include template="designs/default_design.des" pass_params="1"/>
<!--## /DESIGN TEMPLATE ##-->
\ No newline at end of file
Index: branches/1.0.x/inc/styles.css
===================================================================
--- branches/1.0.x/inc/styles.css (revision 15042)
+++ branches/1.0.x/inc/styles.css (revision 15043)
@@ -1,2482 +1,2522 @@
@charset "UTF-8";
/* Basic Blocks
*******************************************************************************/
html {
min-width: 1000px;
}
body {
background: #fff url(@templates_base@/img/bg-header.jpg) repeat-y 0 0;
color: #3c3c3c;
font: 0.813em/1.231em Arial,Verdana,Tahoma,Sans-Serif;
}
img { border: 0; }
table { border-collapse: collapse; border-spacing: 0; }
td { padding: 0; vertical-align: top; }
a, a:hover, a:focus { color: #333; outline: none; text-decoration: underline; }
a:hover, a:focus { text-decoration: none; }
.clear { clear: both !important; }
.fix { border: 1px solid #f00; }
+.left { float:left }
+.right { float: right }
+
/* Header
*******************************************************************************/
#header {
margin: 0 auto;
width: 960px;
}
#header .logo {
float: left;
padding: 18px 0;
}
#header .infoblock {
float: right;
position: relative;
width: 580px;
}
#header .infoblock .welcome {
color: #343338;
float: right;
padding: 9px 0;
position: relative;
}
#header .infoblock .welcome div { float: left; }
#header .infoblock .welcome .txt { padding: 0 0 0 20px; }
#header .infoblock .welcome .logged { padding-top: 5px; }
#header .infoblock .welcome .txt a { font-weight: bold; }
#header .infoblock .welcome .lang .with-icon {
background: url(@templates_base@/img/lang/eng.gif) no-repeat 10px 7px;
padding: 5px 10px 10px 35px;
}
#header .infoblock .welcome .lang .without-icon {
padding: 5px 10px 10px 10px;
}
#header .infoblock .welcome .txt,
#header .infoblock .welcome .lang,
#header .infoblock .welcome .currency,
#header .infoblock .welcome .profile-menu {
position: relative;
}
#header .infoblock .welcome .profile-menu { margin-left: 10px; margin-right: 10px; }
#header .infoblock .welcome .txt .login,
#header .infoblock .welcome .currency .cur,
#header .infoblock .welcome .profile-menu .link {
padding: 5px 10px 10px;
}
#header .infoblock .welcome .currency { margin-left: 5px; }
#header .infoblock .welcome .currency .cur.plashka-sel { margin-left: -1px; }
a#lang,
a#currency,
a#profile {
background: url(@templates_base@/img/icon-select.gif) no-repeat 100% 6px;
display: block;
padding: 0 12px 0 0;
text-decoration: none;
}
#header .infoblock .cart {
background: url(@templates_base@/img/bg-cart.jpg) no-repeat 100% 0;
float: left;
font-size: 1.154em;
font-weight: bold;
padding: 15px 0;
}
#header .infoblock .cart span,
#header .infoblock .cart a { float: left; }
#header .infoblock .cart a {
background: url(@templates_base@/img/icon-checkout.gif) no-repeat 100% 12px;
color: #75b833;
line-height: 33px;
padding: 0 12px 0 0;
text-decoration: none;
}
#header .infoblock .cart i {
font-size: 0.733em;
}
#header .infoblock .cart .items {
background: url(@templates_base@/img/icon-cart.png) no-repeat 0 0;
line-height: 33px;
padding: 0 0 0 50px;
}
#header .infoblock .cart .delim {
color: #b5b5b5;
font-weight: normal;
line-height: 33px;
padding: 0 15px;
}
#header .infoblock .cart .phone {
color: #535353;
font: bold 1.385em Tahoma,Arial,Verdana,Sans-Serif;
line-height: 33px;
padding-right: 50px;
}
#header .infoblock .welcome .lang #lang-sel a {
text-decoration: underline;
}
#header .infoblock .welcome .lang #lang-sel .eng {
background: url(@templates_base@/img/lang/eng.gif) no-repeat 0 0;
padding: 0 0 0 25px;
}
#header .infoblock .welcome .lang #lang-sel .deutch {
background: url(@templates_base@/img/lang/deutch.gif) no-repeat 0 0;
padding: 0 0 0 25px;
}
#header .infoblock .welcome .lang #lang-sel .rus {
background: url(@templates_base@/img/lang/rus.gif) no-repeat 0 0;
padding: 0 0 0 25px;
}
.plashka {
background-color: #fff;
border: 1px solid #d0d0d0;
display: none;
padding: 10px 20px 5px;
position: absolute;
top: 31px;
right: -1px;
z-index: 95;
-webkit-border-radius: 5px;
-webkit-border-top-right-radius: 0;
-moz-border-radius: 5px;
-moz-border-radius-topright: 0;
border-radius: 5px;
border-top-right-radius: 0;
-moz-box-shadow: 0 0 8px #ccc;
-webkit-box-shadow: 0 0 8px #ccc;
box-shadow: 0 0 8px #ccc;
}
.plashka-sel {
background-color: #fff !important;
border: 1px solid #d0d0d0;
border-bottom: 1px solid #fff;
margin: -1px -1px 0 0;
position: relative;
z-index: 96;
-webkit-border-top-left-radius: 5px;
-webkit-border-top-right-radius: 5px;
-moz-border-radius-topleft: 5px;
-moz-border-radius-topright: 5px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
-moz-box-shadow: #ccc 0 -3px 8px -1px;
-webkit-box-shadow: #ccc 0 -3px 8px -1px;
box-shadow: #ccc 0 -3px 8px -1px;
}
#header .infoblock .welcome .plashka li {
padding: 0 0 5px;
white-space: nowrap;
}
#header .infoblock .welcome .plashka .active { color: #2d85d6; }
#header .infoblock .welcome .txt .plashka,
#header .infoblock .welcome .profile-menu .plashka { right: 0; }
.plashka-sel a#lang,
.plashka-sel a#currency,
.plashka-sel a#profile {
background: url(@templates_base@/img/icon-close.gif) no-repeat 100% 6px;
}
#header .infoblock .welcome .login,
.login-alt .login {
display: inline-block;
float: none;
}
.login-alt .login { font-size: 0.867em; padding-left: 5px; }
#header .infoblock .welcome .login a,
.login-alt .login a {
background: url(@templates_base@/img/bg-button-login.jpg) no-repeat 0 0;
display: block;
height: 18px;
text-align: center;
text-decoration: none;
width: 61px;
}
#header .infoblock .welcome .txt .login.plashka-sel,
.login-alt .login.plashka-sel {
margin-left: 4px;
margin-bottom: 1px;
padding: 5px 18px 10px;
}
.login-alt .login.plashka-sel { padding: 5px 10px 10px; }
#header .infoblock .welcome .login.plashka-sel a,
.login-alt .login.plashka-sel a {
background: none;
height: auto;
width: auto;
}
.icon-close { right: 10px; position: absolute; }
/*** Menu ***/
.menu {
background: #3e3e3e url(@templates_base@/img/bg-menu.jpg) repeat-x 0 0;
height: 46px;
position: relative;
width: 100%;
}
.menu .padding {
margin: 0 auto;
width: 960px;
}
.menu ul {
float: left;
width: 740px;
}
.menu ul li {
color: #fff;
float: left;
font-size: 1.154em;
font-weight: bold;
}
.menu ul li a {
color: #fff;
display: block;
line-height: 46px;
padding: 0 18px;
text-decoration: none;
}
.menu ul li a:hover,
.menu ul li a:focus {
background: #4b4b4b url(@templates_base@/img/bg-menu.jpg) repeat-x 0 -46px;
}
.menu ul li a.active {
background: #2d85d6 url(@templates_base@/img/bg-menu.jpg) repeat-x 0 -92px;
}
/* === Top Search Box: begin === */
/*.menu .searchbox {
background: url(@templates_base@/img/bg-searchbox-l.jpg) no-repeat 0 0;
float: right;
margin-top: 10px;
text-align: right;
width: 210px;
}
.menu .searchbox input[type="text"] {
border: none;
background: #fff url(@templates_base@/img/bg-searchbox-r.jpg) no-repeat 100% 0;
height: 23px;
line-height: 23px;
padding-top: 2px;
width: 180px;
}*/
.search-box-small {
height:23px;
background:url(@templates_base@/img/search_box.gif) bottom left;
width:146px;
cursor:text;
}
.search-box-small input {
font-family:Arial, Helvetica, sans-serif;
width:93px;
float:left;
font-size:9pt;
border:none;
background:none;
line-height:23px;
margin-left:30px;
margin-top:5px;
line-height:14px;
}
.search-box-small input:focus { outline: none }
.search-box-small-noactive {
background:url(@templates_base@/img/search_box.gif) top left;
}
.search-box-small-noactive input {
color:#FFFFFF;
}
.search-box-small-noactive .search-clear {
display:none;
}
.search-box-small .search-clear {
margin-top: 5px;
margin-left:5px;
cursor:pointer;
}
.search-box-small-results {
position:absolute;
margin-top:-4px;
margin-left:-173px;
}
.search-box-small-header {
background:url(@templates_base@/img/search_top.png) top left;
padding-top:25px;
padding-left:25px;
padding-right:25px;
width:277px;
}
.search-box-small-footer {
background:url(@templates_base@/img/search_bottom.png) top left;
width:327px;
height:14px;
}
/* === Top Search Box: end === */
.level2 {
background-color: #fff;
left: 273px;
position: absolute;
z-index: 4000;
}
.level2-bg {
border: 1px solid #3e3e3e;
float: left;
width: auto;
-webkit-border-bottom-right-radius: 5px;
-webkit-border-bottom-left-radius: 5px;
-moz-border-radius-bottomright: 5px;
-moz-border-radius-bottomleft: 5px;
border-bottom-right-radius: 5px;
border-bottom-left-radius: 5px;
box-shadow: 0 0 3px #444;
-moz-box-shadow: 0 0 3px #444;
-webkit-box-shadow: 0 0 3px #444;
}
#level2-menu {
background-color: #3e3e3e;
float: left;
padding: 8px 0;
width: 200px;
}
#level2-menu h3 {
background-color: #3e3e3e;
padding: 7px 12px;
white-space: nowrap;
}
#level2-menu h3 a {
color: #fff;
font-weight: bold;
text-decoration: none;
}
#level2-menu h3 a:hover {
text-decoration: underline;
}
#level2-menu ul {
width: 100%;
}
#level2-menu ul li {
background-color: #eaeaea;
font-size: 0.923em;
font-weight: normal;
width: 100%;
}
#level2-menu ul li a {
color: #3e3e3e;
line-height: 20px;
padding: 3px 13px 5px;
text-decoration: none;
}
#level2-menu ul li a:hover,
#level2-menu ul li a:focus {
background: none;
text-decoration: underline;
}
#level2-menu ul li a.active {
background: none;
}
#level2-menu ul li i {
background: url(@templates_base@/img/bullet-l3menu.png) no-repeat 22px 9px;
display: block;
padding: 0 0 0 20px;
white-space: nowrap;
}
#level2-menu ul li.level3-menu h4 {
padding-left: 20px;
white-space: nowrap;
}
#level2-menu ul li.level3-menu ul {
background-color: #fff;
}
#level2-menu ul li.level3-menu ul li {
background-color: #fff;
font-size: 0.917em;
}
#level2-menu ul li.level3-menu ul li a {
background: url(@templates_base@/img/bullet-l3menu.png) no-repeat 35px 4px;
line-height: 18px;
padding: 0 0 0 45px;
}
#level2-menu ul li.level3-menu ul li a.active { color: #2f7916; }
#level2-menu.ui-accordion .ui-accordion-content { overflow: hidden; }
#level2-menu.ui-accordion .ui-accordion-content-active { background-color: #eaeaea; }
#level2-menu .ui-icon-circle-arrow-l2e {
background: url(@templates_base@/img/bullet-l2menu.png) no-repeat 0 0;
height: 7px;
width: 4px;
}
#level2-menu .ui-icon-circle-arrow-l2s {
background: url(@templates_base@/img/bullet-l2menu.png) no-repeat 0 -7px;
height: 4px;
width: 7px;
}
#level2-menu .ui-icon-circle-arrow-l3e {
background: url(@templates_base@/img/bullet-l2menu.png) no-repeat 0 -11px;
height: 7px;
width: 4px;
}
#level2-menu .ui-icon-circle-arrow-l3s {
background: url(@templates_base@/img/bullet-l2menu.png) no-repeat 0 -18px;
height: 4px;
width: 7px;
}
#level-content {
background-color: #fff;
float: left;
padding: 15px;
width: 400px;
}
#level-content ul {
width: auto;
}
#level-content ul li {
background: url(@templates_base@/img/bullet-level5.png) no-repeat 0 7px;
float: left;
font-size: 1em;
font-weight: normal;
padding: 0 10px 7px 10px;
width: 180px;
}
#level-content ul li a {
color: #3c3c3c;
line-height: 20px;
padding: 0;
text-decoration: underline;
}
#level-content ul li a:hover,
#level-content ul li a:focus {
background: none;
color: #2a80d3;
}
#level-good {
background-color: #fff;
float: left;
padding: 15px;
text-align: center;
width: 120px;
}
#level-good .price { padding: 10px 0; }
/* Content
*******************************************************************************/
#content {
background-color: #f7f7f7;
padding: 32px 0;
width: 100%;
}
#content .padding {
margin: 0 auto;
position: relative;
width: 960px;
}
#content .block-fixed {
background-color: #fff;
border: 1px solid #d0d0d0;
padding: 13px 11px 0 11px;
position: absolute;
margin: 40px 0 0 -100px;
}
#content .block-fixed div { padding-bottom: 13px; }
.button-addtocart {
background: url(@templates_base@/img/button-addtocart-left.jpg) no-repeat 0 0;
color: #faffed;
display: inline-block;
font-size: 0.846em;
text-shadow: #000 0px 1px 1px;
text-decoration: none;
}
.button-addtocart span {
background: url(@templates_base@/img/button-addtocart-right.jpg) no-repeat 100% 0;
display: inline-block;
height: 40px;
padding: 5px 6px 0;
text-align: center;
}
.button-addtocart span i { display: block; margin-top: -4px; }
.button-addtocart:hover { color: #faffed; text-shadow: #000 0px 1px 1px; }
#content .leftcol {
float: left;
padding: 0 20px 0 0;
width: 230px;
}
#content .rightcol {
float: left;
padding: 0 0 0 20px;
width: 230px;
}
#content .contentcol {
float: left;
width: 710px;
}
.subscribe-block {
background: url(@templates_base@/img/subs.png) no-repeat 0 100%;
padding: 0 16px 11px 0;
width: 214px;
}
.subscribe-block h4 {
background: url(@templates_base@/img/subs-top.png) no-repeat 0 0;
font-size: 1.077em;
font-weight: bold;
padding: 14px 0 0 16px;
width: 214px;
}
.subscribe-block fieldset {
padding: 10px 0 0 16px;
text-align: left;
width: 214px;
}
input.field,
textarea.field,
select.field,
select.field-alt {
background: url(@templates_base@/img/bg-field.jpg) repeat-x 0 0;
border: 1px solid #828282;
height: 24px;
line-height: 24px;
margin-bottom: 5px;
padding: 0 5px;
}
select.field { height: 26px; padding: 0 0 0 5px; }
select.field-alt { height: 26px; margin: 0; padding: 0 0 0 5px; }
input.field:focus,
textarea.field:focus,
select.field-alt:focus,
select.field:focus { border: 1px solid #000; }
.form select.field { width: 360px; }
.form input.subsfield { width: 190px; }
/*** Block ***/
.block {
background: url(@templates_base@/img/bg-block-bottom.jpg) no-repeat 0 100%;
margin: 0 0 10px;
padding: 0 0 8px;
}
.block .block-top {
background: url(@templates_base@/img/bg-block-top.jpg) no-repeat 0 100%;
height: 8px;
width: 100%;
}
.block.no-border-bottom {
background: none;
padding: 0;
}
.block.block-margin { margin: 0 0 20px; }
.block h2 {
background: url(@templates_base@/img/h1-left.png) no-repeat 0 0;
height: 36px;
line-height: 36px;
padding-left: 14px;
position: relative;
z-index: 10;
}
.block h2 em,
.block h2 a {
color: #fefefe;
font-size: 1.154em;
font-weight: bold;
font-style: normal;
position: relative;
z-index: 150;
}
.block h2 em.filter-header {
padding-left: 14px;
}
.block h2 a { text-decoration: underline; }
.block h2 i {
background: url(@templates_base@/img/bc-step.png) no-repeat 50% 50%;
padding: 0 15px;
}
.block h2 span {
background: url(@templates_base@/img/h1-right.png) no-repeat 100% 0;
height: 53px;
position: absolute;
top: -3px; right: -6px;
width: 136px;
z-index: 50;
}
.block h2 span.new { background: url(@templates_base@/img/h1-right-new.png) no-repeat 100% 0; }
.block h2 span.pick { background: url(@templates_base@/img/h1-right-pick.png) no-repeat 100% 0; }
.block h2 span.sale { background: url(@templates_base@/img/h1-right-sale.png) no-repeat 100% 0; }
.block h2 span.bullet { background: url(@templates_base@/img/h1-right-bullet.png) no-repeat 100% 0; }
.block.alt-block {
background: none;
}
.block.alt-block h2 {
background: url(@templates_base@/img/bg-block.png) no-repeat 0 0;
padding-left: 0;
}
.block.alt-block h2.active {
background-position: 0 100%;
}
.block.alt-block h2 a {
display: block;
float: right;
line-height: 8px;
padding-top: 8px;
padding-right: 8px;
}
.block .block-content {
background-color: #fff;
border: 1px solid #d0d0d0;
border-top: none;
padding: 15px;
-webkit-border-bottom-right-radius: 5px;
-webkit-border-bottom-left-radius: 5px;
-moz-border-radius-bottomright: 5px;
-moz-border-radius-bottomleft: 5px;
border-bottom-right-radius: 5px;
border-bottom-left-radius: 5px;
}
.block .block-content.noactive { display: none; }
.manufacturer dt {
float: left;
padding: 0 0 5px;
width: 155px;
}
.manufacturer dd {
float: left;
text-align: right;
width: 40px;
}
.manufacturer .active {
color: #0171e4;
}
.manufacturer label { text-decoration: underline; }
.slider-vertical {
background: url(@templates_base@/img/bg-vertslider-full.png) no-repeat 0 0;
float: left;
padding: 5px 0 0;
}
.slider-vertical .ui-slider-range {
background: url(@templates_base@/img/bg-vertslider-a.png) repeat-y 0 0;
margin: 0 0 0 7px;
}
.slider-vertical .ui-slider-handle {
background: url(@templates_base@/img/point-vertslider.png) no-repeat 0 0;
height: 9px;
margin: 0;
width: 16px;
}
.range-block {
margin: 0 auto;
padding: 10px 0 0;
width: 120px;
}
.range-block ul.range {
color: #333;
float: left;
margin-right: 10px;
position: relative;
top: -7px;
width: 50px;
}
.range-block ul.range li {
padding: 0 0 10px;
text-align: right;
}
.range-block ul.range li:last-child { padding: 0; }
.range-block ul.range2 {
color: #a0a0a0;
float: left;
margin-left: 10px;
position: relative;
top: 4px;
width: 20px;
}
.range-block ul.range2 li {
font-size: 0.846em;
padding: 0 0 10px;
text-align: left;
}
.range-block ul.range2 li:last-child { padding: 0; }
/*** Accordion menu ***/
#accordion-menu {
border-left: 1px solid #d0d0d0;
border-right: 1px solid #d0d0d0;
}
#accordion-menu h3 {
background: #fff url(@templates_base@/img/bg-point-menu.jpg) repeat-x 0 100%;
border-bottom: 1px solid #d0d0d0;
color: #666;
cursor: pointer;
font-size: 1.077em;
font-weight: bold;
padding: 10px 14px;
position: relative;
}
#accordion-menu h3.active {
background: #1b6bc7 url(@templates_base@/img/bg-point-menu-active.jpg) repeat-x 0 0;
color: #fff;
}
#accordion-menu a { padding-left: 20px; text-decoration: none; }
#accordion-menu a:hover, #accordion-menu a:focus { text-decoration: underline; }
#accordion-menu h3.active a { color: #fff; }
#accordion-menu .ui-icon-circle-arrow-e {
background: url(@templates_base@/img/bullet-menu.png) no-repeat 0 0;
height: 6px;
width: 10px;
}
#accordion-menu.alt-menu .ui-icon-circle-arrow-e {
margin-top: -4px;
position: absolute;
top: 50%;
}
#accordion-menu .ui-icon-circle-arrow-s {
background: url(@templates_base@/img/bullet-menu.png) no-repeat 0 -6px;
height: 6px;
width: 10px;
}
#accordion-menu .ui-icon-circle-arrow-a {
background: url(@templates_base@/img/bullet-menu.png) no-repeat 0 -12px;
height: 10px;
margin-top: -5px;
position: absolute;
top: 50%;
width: 8px;
}
#accordion-menu div {
background-color: #fff;
border-bottom: 1px solid #d0d0d0;
}
#accordion-menu div ul { padding: 10px 0 10px 7px; }
#accordion-menu div ul li { padding: 3px 0 5px 7px; }
#accordion-menu div ul li.active {
background: url(@templates_base@/img/bg-subcategory.png) repeat-x 0 0;
}
#accordion-menu div ul a { color: #333; padding-left: 0; }
#accordion-menu div ul li.active a { color: #fff; }
#accordion-menu div ul li ul { padding: 10px 0 0 25px; }
#accordion-menu div ul li ul li {
background: url(@templates_base@/img/point-subcategory.png) no-repeat 0 7px;
font-size: 0.923em;
padding: 2px 0 2px 10px;
}
#accordion-menu div ul li.active ul a { color: #333; }
/*** Good item ***/
.good-item {
background-color: #fff;
width: auto;
}
.good-item.good-item-narrow {
margin: 5px 5px 0 0;
width: 171px;
}
.good-item.good-item-narrow-last {
margin-right: 0;
}
.good-item.good-item-float {
float: left;
height: 290px;
}
.good-item.border-radius-bottom {
border: 1px solid #d0d0d0;
border-top: none;
-webkit-border-bottom-right-radius: 5px;
-webkit-border-bottom-left-radius: 5px;
-moz-border-radius-bottomright: 5px;
-moz-border-radius-bottomleft: 5px;
border-bottom-right-radius: 5px;
border-bottom-left-radius: 5px;
}
.good-item.border-radius {
border: 1px solid #d0d0d0;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
}
.good-item dl {
padding: 14px 16px 0;
text-align: center;
}
.good-item dl dd { padding-bottom: 15px; }
.comparing-items.good-item dl dd { padding-bottom: 0; }
.good-item.comparing-items dl {
border-bottom: 1px dotted #b5b5b5;
padding: 14px 0;
margin: 0 16px;
}
.good-item.comparing-items dl.last {
border-bottom: none;
}
.good-item.comparing-items .buttons {
padding: 15px 0;
text-align: center;
width: 230px;
}
.good-item dl dt { padding-bottom: 15px; }
.good-item dl dt a {
font-size: 1.077em;
font-weight: bold;
}
.good-item .img { height: 140px; }
.comparing-items.good-item .img { height: auto; padding-bottom: 15px; }
.good-item .price {
font-size: 1.846em;
font-weight: bold;
font-style: normal;
padding: 10px 0;
}
.good-item .price span {
font-size: 0.708em;
}
.good-item .addtocart {
background: url(@templates_base@/img/addtocart-left.jpg) no-repeat 0 0;
color: #faffed;
display: inline-block;
font-size: 1.077em;
font-weight: bold;
text-shadow: #000 0px 1px 1px;
text-decoration: none;
}
.good-item .addtocart span {
background: url(@templates_base@/img/addtocart-right.jpg) no-repeat 100% 0;
display: inline-block;
height: 33px;
line-height: 33px;
padding: 0 20px;
}
.good-item .addedtocart {
color: #3d901f;
font-size: 1.154em;
}
/*** Scrollable ***/
#scrollable {
position:relative;
overflow: hidden;
width: 710px;
height: 309px;
background-color: #fff;
margin: 5px 0
}
#scrollable .items {
border-top: 1px solid #d0d0d0;
border-bottom: 1px solid #d0d0d0;
height: 307px;
margin: 0 30px;
padding: 0;
position: relative;
width: 650px;
}
#scrollable .good-item {
background: url(@templates_base@/img/delimiter-special.gif) repeat-y 100% 0;
position:relative;
width:222px;
height: 280px;
margin: 16px 0;
}
#scrollable .good-item dl { padding: 0 16px; }
#scrollable .good-item dl dt { height: 35px; }
#scrollable .good-item dl dd .price { color: #c2120a; }
#scrollable .good-item dl dd .price-deal {
padding: 10px 0;
}
#scrollable .good-item dl dd .price-deal s.under {
font-size: 1.308em;
font-weight: bold;
padding-right: 10px;
}
#scrollable .good-item dl dd .price-deal s.under span {
font-size: 0.706em;
}
#scrollable .ca-nav span {
width:30px;
height:309px;
background:transparent url(@templates_base@/img/special-navi.png) no-repeat 0 0;
position:absolute;
top:0;
left:0;
text-indent:-9000px;
cursor:pointer;
z-index:8;
}
#scrollable .ca-nav span.ca-nav-prev:hover {
background-position:-30px 0;
}
#scrollable .ca-nav span.ca-nav-next {
background-position:-60px 0;
left:auto;
right:0;
}
#scrollable .ca-nav span.ca-nav-next:hover {
background-position:-90px 0;
}
#content .content,
#content .compare {
margin: 5px 0 0;
padding: 20px 30px;
}
#content .content.border-radius,
#content .goods.border-radius,
#content .items.border-radius,
#content .compare.border-radius {
background-color: #fff;
border: 1px solid #d0d0d0;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
width: auto;
}
#content .content p {
font-size: 1.077em;
line-height: 1.5em;
}
#feedback {
background: url(@templates_base@/img/con-contact.jpg) no-repeat 100% 0;
font-size: 0.929em;
padding: 20px 330px 0 0;
}
#feedback p.req {
border-bottom: 1px solid #d0d0d0;
color: #3e85d2;
font-size: 1em;
font-weight: bold;
margin-bottom: 15px;
padding: 0 0 5px;
}
span.star {
color: #3e85d2;
font-weight: bold;
}
#feedback p {
clear: both !important;
padding: 5px 0;
}
#feedback label {
float: left;
font-weight: bold;
padding: 5px 0;
white-space: nowrap;
width: 110px;
}
.form .field {
border: 1px solid #b4b4b4;
width: 350px;
}
#feedback input.field,
#feedback span.radios,
#feedback textarea {
float: left;
}
#feedback textarea {
background: url(@templates_base@/img/bg-textarera.jpg) repeat-x 0 0;
border: 1px solid #b4b4b4;
height: 120px;
width: 450px;
}
#feedback .radio label { width: 240px; }
#feedback span.radios { padding: 5px 0; }
#feedback .buttons {
padding: 10px 0 0 110px;
}
.form .green-button {
background: url(@templates_base@/img/bg-buttons.jpg) no-repeat 0 0;
border: none;
color: #fff;
font-weight: bold;
height: 26px;
padding-bottom: 1px;
width: 90px;
}
.form .grey-button, .form .green-button[disabled] {
background: url(@templates_base@/img/bg-buttons.jpg) no-repeat 0 100%;
border: none;
color: #000;
font-weight: bold;
height: 26px;
padding-bottom: 1px;
width: 90px;
}
.green-but {
background: url(@templates_base@/img/bg-button-left.png) no-repeat 0 0;
color: #fff;
display: inline-block;
font-weight: bold;
height: 26px;
line-height: 26px;
margin: 0 20px 0 0;
padding: 0 0 0 20px;
text-decoration: none;
}
.green-but:hover { color: #fff; text-decoration: none; }
.green-but span {
background: url(@templates_base@/img/bg-button-right.png) no-repeat 100% 0;
display: inline-block;
height: 26px;
margin: 0 -19px 0 0;
padding: 0 20px 0 0;
}
.grey-but {
background: url(@templates_base@/img/bg-button-left.png) no-repeat 0 100%;
color: #3c3c3c;
display: inline-block;
font-weight: bold;
height: 26px;
line-height: 26px;
padding: 0 0 0 20px;
text-decoration: none;
}
.grey-but:hover { color: #3c3c3c; text-decoration: none; }
.grey-but span {
background: url(@templates_base@/img/bg-button-right.png) no-repeat 100% 100%;
display: inline-block;
height: 26px;
margin: 0 -19px 0 0;
padding: 0 20px 0 0;
}
/*** Login form ***/
.login-form {
padding: 0;
}
.login-form p {
padding: 5px 0;
}
.login-form label {
display: block;
font-weight: bold;
padding-bottom: 5px;
}
.login-form .field {
width: 230px;
}
/* Footer
*******************************************************************************/
#footer {
margin: 0 auto;
width: 960px;
}
#footer .copy {
float: left;
font-family: Tahoma,Arial,Verdana,Sans-Serif;
padding-top: 18px;
width: 580px;
}
#footer .copy .doplinks {
color: #a8a8a8;
padding-top: 15px;
}
#footer .copy .doplinks a { padding: 0 15px; }
#footer .copy .doplinks a:first-child { padding-left: 0; }
#footer .links {
background: url(@templates_base@/img/bg-blinks.jpg) no-repeat 0 0;
float: left;
padding: 18px 0 36px 16px;
width: 124px;
}
#footer .links ul li {
background: url(@templates_base@/img/li-blinks.gif) no-repeat 0 6px;
padding: 0 0 0 11px;
}
#footer .payment {
float: left;
font-weight: bold;
padding: 18px 0 36px;
text-align: right;
width: 230px;
}
#footer .payment .logos {
padding: 0 0 20px;
}
#footer .payment a {
padding: 0 3px;
}
.basketStatus {
position: absolute;
top: 153px;
left: 247px;
display: block;
z-index: 5000;
}
.basketStatus .basketContent {
background-color: #fff;
width: 230px;
font-weight: bold;
position:relative;
z-index:5001;
color: #333;
padding: 12px 25px;
box-shadow: 0 0 3px #444;
-moz-box-shadow: 0 0 3px #444;
-webkit-box-shadow: 0 0 3px #444;
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}
.basketStatus .basketArrow {
background: url(@templates_base@/img/con-basket-arrow.png) no-repeat 0 0;
height: 15px;
margin: -55px 0 0 22px;
position: relative;
width: 26px;
z-index: 5006;
}
.basketStatus .basketContent .subtitle { color: #62aa2c; padding-bottom: 15px; }
.basketStatus .basketContent .img {
float: left;
padding-right: 15px;
}
.basketStatus .basketContent .info { color: #333; }
/* --- Item Rating Styles --- */
.ratingblock, .ratingblock div {
display: -moz-inline-block;
}
.voted {
color: #999;
}
.thanks {
color: #36AA3D;
}
.static {
color: #5D3126;
}
.inline-rating {
display:-moz-inline-block;
display:-moz-inline-box;
display:inline-block;
vertical-align: middle;
}
.star-rating,
.star-rating a:hover,
.star-rating a:active,
.star-rating a:focus,
.star-rating .current-rating{
background: url('@templates_base@/img/star_sprite.gif') left -1000px repeat-x;
}
.star-rating {
position:relative;
width:125px;
height:25px;
overflow:hidden;
list-style:none;
margin:0;
padding:0;
background-position: left top;
}
.star-rating li {
display: inline;
}
.star-rating a,
.star-rating .current-rating {
position:absolute;
top:0;
left:0;
text-indent:-1000em;
height:25px;
line-height:25px;
outline:none;
overflow:hidden;
border: none;
}
.star-rating a:hover,
.star-rating a:active,
.star-rating a:focus {
background-position: left bottom;
}
.star-rating a.r1-unit { width:20%;z-index:6; }
.star-rating a.r2-unit { width:40%;z-index:5; }
.star-rating a.r3-unit { width:60%;z-index:4; }
.star-rating a.r4-unit { width:80%; z-index:3; }
.star-rating a.r5-unit { width:100%; z-index:2; }
.star-rating .current-rating { z-index:1; background-position: left center; }
.small-star {
width:50px;
height:10px;
}
.small-star, .small-star a:hover, .small-star a:active,
.small-star a:focus, .small-star .current-rating {
background-image: url('@templates_base@/img/star_sprite_small.gif');
line-height: 10px;
height: 10px;
}
/* Category Page
*******************************************************************************/
.goods {
margin: 5px 0;
padding: 20px 20px 10px 20px;
}
.goods .good-item {
float: left;
height: 200px;
margin-bottom: 10px;
width: 165px;
}
.goods .good-item.borbottom {
border-bottom: 1px dotted #d0d0d0;
padding-bottom: 10px;
}
.goods .good-item dl {
border-right: 1px dotted #d0d0d0;
padding: 5px;
}
.goods .good-item dl.no-border-right { border-right: none; }
.goods .good-item.no-border,
.goods .good-item.no-border dl { border: none; }
/*** Filter block ***/
.filter-block { float: left; padding: 10px 0; width: 100%; }
.filter-block div { float: left; }
.filter-block .paginate {
font-weight: bold;
padding: 0 40px 0 0;
}
.filter-block .sortby { font-weight: bold; }
.filter-block .sortby a { font-weight: normal; }
.filter-block .display_switch { float: right; text-align: right; }
.filter-block .display_switch a.switch_thumb {
width: 48px;
height: 21px;
display: block;
background: url(@templates_base@/img/display-view.png) no-repeat 0 0;
outline: none;
text-indent: -9999px;
}
.filter-block .display_switch a.swap { background-position: 0 100%; }
.filter-block .sortby form { display: inline; }
.items { padding: 20px; }
.items.items-alt { padding: 0; }
.items .item {
border-top: 1px solid #d0d0d0;
float: left;
padding: 15px 10px;
position: relative;
width: auto;
}
.items .ribbon {
background: url(@templates_base@/img/ribbon.png) no-repeat 0 0;
height: 40px;
position: absolute;
top: -3px; right: -26px;
width: 102px;
z-index: 100;
}
.items .ribbon.sale { background-position: 0 0; }
.items .ribbon.top { background-position: 0 -40px; }
.items .ribbon.new { background-position: 0 -80px; }
.items .item .img {
float: left;
padding-right: 15px;
width: 70px;
}
.items .item .descr {
float: left;
padding-right: 15px;
width: 360px;
}
.items .item .descr h3 {
font-size: 1.077em;
font-weight: bold;
padding-bottom: 5px;
}
-.items .item .descr .optional { padding: 5px 0; }
-.items .item .descr .optional .stars { padding: 0 20px 0 0; }
+
+.items .item .descr .optional {
+ padding: 15px 0 5px 0;
+}
+
+.items .item .descr .optional .stars {
+ padding: 0 20px 0 0;
+ display: block;
+ float: left
+}
+
+.items .item .descr .optional .reviews {
+ width: auto;
+ padding-top: 0px;
+ padding-right: 20px;
+ border: 0px;
+}
.items .item .descr .optional .comp label em {
font-style: normal;
text-decoration: underline;
}
.items .item .descr .optional .comp label input {
bottom: -2px;
margin: 0 5px 0 0;
position: relative;
}
.items .item .price-block {
float: left;
width: 185px;
}
.items .item .price-block s.under {
display: block;
font-size: 1.308em;
font-weight: bold;
padding-right: 10px;
}
.items .item .price-block s.under span { font-size: 0.706em; }
.items .item .price-block .redprice { padding: 10px 0; }
.items .item .price-block em.price {
color: #C2120A;
font-size: 1.846em;
font-weight: bold;
font-style: normal;
}
.items .item .price-block em.price span { font-size: 0.708em; }
.items .item .price-block .addtocart {
background: url(@templates_base@/img/addtocart-left.jpg) no-repeat 0 0;
color: #faffed;
display: inline-block;
font-size: 1.077em;
font-weight: bold;
text-shadow: #000 0px 1px 1px;
text-decoration: none;
}
.items .item .price-block .addtocart span {
background: url(@templates_base@/img/addtocart-right.jpg) no-repeat 100% 0;
display: inline-block;
height: 33px;
line-height: 33px;
padding: 0 20px;
}
ul.display { border-bottom: 1px solid #d0d0d0; float: left; width: 100%; }
ul.display li { float: left; width: 100%; }
ul.thumb_view { border-bottom: none; }
ul.thumb_view li {
background-color: #fff;
border: 1px solid #d0d0d0;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
float: left;
height: 180px;
margin: 0 5px 5px 0;
width: 348px;
}
ul.thumb_view li .item {
border-top: none;
padding: 15px;
width: 319px;
}
ul.thumb_view li .item .img {
position: absolute;
top: 38px;
width: 133px;
}
ul.thumb_view li .item .img img { height: 133px; width: 133px; }
ul.thumb_view li .item .ribbon { right: -4px; }
ul.thumb_view li .item .descr {
position: absolute;
width: auto;
}
ul.thumb_view li .item .descr .optional {
left: 158px;
position: absolute;
top: 132px;
width: 165px;
}
ul.thumb_view li .item .descr .optional .stars { padding: 0 10px 0 0; }
ul.thumb_view li .item .descr p,
ul.thumb_view li .item .descr .optional .reviews { display: none; }
ul.thumb_view li .item .price-block {
float: none;
left: 170px;
position: absolute;
top: 50px;
}
/*** Pagination ***/
.pagination { padding-top: 20px; text-align: center; }
.pagination span,
.pagination a {
background: url(@templates_base@/img/paginate.png) no-repeat -28px 0;
color: #fff;
display: inline-block;
font-size: 1.308em;
font-weight: bold;
height: 28px;
line-height: 28px;
text-align: center;
text-decoration: none;
width: 28px;
}
.pagination span.prev {
background-position: 0 100%;
margin-right: 20px;
}
.pagination a.prev {
background-position: 0 0;
margin-right: 20px;
}
.pagination span.next {
background-position: -56px 100%;
margin-left: 20px;
}
.pagination a.next {
background-position: -56px 0;
margin-left: 20px;
}
.pagination a.active {
background-position: -28px 100%;
}
/* Details Page
*******************************************************************************/
.block h2 a.product-prev {
background: url(@templates_base@/img/product-nav.png) no-repeat 0 0;
height: 21px;
position: absolute;
right: 40px;
top: 9px;
width: 21px;
}
.block h2 a.product-next {
background: url(@templates_base@/img/product-nav.png) no-repeat 100% 0;
height: 21px;
position: absolute;
right: 15px;
top: 9px;
width: 21px;
}
.block h2 a.product-prev:hover { background-position: 0 -21px; }
.block h2 a.product-next:hover { background-position: 100% -21px; }
.block h2 a.product-prev.disabled { background-position: 0 -42px; }
.block h2 a.product-next.disabled { background-position: 100% -42px; }
.block h2 a.product-prev.disabled:hover,
.block h2 a.product-next.disabled:hover { background: none; }
.product-detail { position: relative; }
.product-detail .ribbon {
background: url(@templates_base@/img/ribbon-big.png) no-repeat 0 0;
height: 53px;
position: absolute;
top: -3px; right: -7px;
width: 136px;
z-index: 100;
}
.product-detail .ribbon.sale { background-position: 0 0; }
.product-detail .ribbon.top { background-position: 0 -53px; }
.product-detail .ribbon.new { background-position: 0 -106px; }
.product-detail h1 {
color: #000;
float: left;
font: 1.846em Tahoma,Verdana,Arial,Sans-Serif;
padding: 0 0 20px;
}
.product-detail .rating {
float: left;
padding: 6px 0 0 10px;
}
.product-detail .h1-reviews {
float: left;
padding: 8px 0 0 10px;
}
.product .info {
float: left;
padding: 0 20px 0 0;
width: 260px;
}
.product .info .img {
position: relative;
}
.product .viewlarger {
position: absolute;
text-align: center;
top: 265px;
width: 260px;
}
.product .viewlarger a {
background: url(@templates_base@/img/icon-zoom-small.png) no-repeat 0 2px;
padding: 0 0 0 20px;
}
.product .info .img .signsmall {
color: #000;
font-size: 0.846em;
position: absolute;
top: 320px;
text-align: center;
width: 260px;
}
.product .info .img .showmore {
color: #686767;
margin-top: 490px;
position: absolute;
}
.product .info .doplinks {
background: url(@templates_base@/img/bg-doplinks.jpg) no-repeat 0 0;
float: left;
height: 152px;
margin-top: 220px;
padding: 40px 0 0 25px;
width: 225px;
}
.product .doplinks a.link-print {
background: url(@templates_base@/img/icon-print.jpg) no-repeat 0 0;
display: inline-block;
height: 32px;
line-height: 32px;
padding: 0 20px 13px 40px;
}
.product .doplinks a.link-compare {
background: url(@templates_base@/img/icon-compare.png) no-repeat 3px 5px;
display: inline-block;
height: 32px;
line-height: 32px;
padding: 0 20px 10px 40px;
}
.product .doplinks a.link-wishlist {
background: url(@templates_base@/img/icon-wishlist.jpg) no-repeat 0 0;
display: inline-block;
height: 32px;
line-height: 32px;
padding: 0 20px 0 40px;
}
.product .description {
float: left;
width: 380px;
}
.product .description .text {
padding: 15px 0;
}
.product .description .options-har {
background-color: #f0f0f0;
margin-bottom: 15px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
}
.product .description .options-har .sel-options {
color: #686767;
float: left;
padding: 8px 0 8px 20px;
}
.product .description .har { border-top: 1px solid #d0d0d0; float: left; margin-top: 10px; padding-top: 10px; text-align: left; width: 50%; }
.product .description .har dt { float: left; font-weight: bold; padding: 0 10px 3px 0; width: 100px; }
.product .description .har dd { float: left; padding: 0 0 3px 0; width: 80px; }
.product .description .har_right dt { width: 50px; }
.product .description .price-block {
float: left;
width: 150px;
}
.product .description .price-block s.under {
display: block;
font-size: 1.308em;
font-weight: bold;
padding-right: 10px;
}
.product .description .price-block s.under span { font-size: 0.706em; }
.product .description .price-block .redprice { padding: 10px 0; }
.product .description .price-block em.price {
color: #C2120A;
font-size: 1.846em;
font-weight: bold;
font-style: normal;
}
.product .description .price-block em.price span { font-size: 0.708em; }
.product .description .order-block {
float: right;
width: 230px;
}
.product .description .order-block .qty {
color: #686767;
float: left;
padding-top: 5px;
}
.product .description .order-block .qty .field {
text-align: center;
width: 25px;
}
.product .description .order-block .avail {
color: #686767;
float: right;
font-weight: bold;
padding-top: 10px;
}
.product .description .order-block .avail em {
color: #00b309;
}
.product .description .order-block .but {
float: right;
}
.product .description .order-block .addtocart {
background: url(@templates_base@/img/addtocart-left.jpg) no-repeat 0 0;
color: #faffed;
display: inline-block;
font-size: 1.077em;
font-weight: bold;
text-shadow: #000 0px 1px 1px;
text-decoration: none;
}
.product .description .order-block .addtocart span {
background: url(@templates_base@/img/addtocart-right.jpg) no-repeat 100% 0;
display: inline-block;
padding: 0 20px 0 10px;
}
.product .description .order-block .addtocart span i {
background: url(@templates_base@/img/bg-button-cart-add.png) no-repeat 0 3px;
line-height: 33px;
padding: 7px 0 7px 30px;
}
.product .description .order-block .addedtocart {
color: #3D901F;
font-size: 1.154em;
}
/*** Tabs ***/
.ui-tabs .ui-tabs-nav {
padding: 0;
}
.ui-widget-header {
background: none;
border: none;
color: #000;
}
.ui-tabs .ui-tabs-nav li {
border: 1px solid #949494;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-selected {
background: #fff url(@templates_base@/img/bg-tab.png) repeat-x 0 0;
border-bottom: none;
position: relative;
z-index: 100;
bottom: -1px;
}
.ui-tabs .ui-tabs-panel {
border: 1px solid #949494;
height: 350px;
overflow-x: hidden;
}
.ui-tabs .ui-tabs-panel p { padding-bottom: 15px; }
/*** Reviews ***/
.reviews {
border-bottom: 1px solid #d0d0d0;
float: left;
padding-top: 30px;
width: 100%;
}
.reviews .info-review {
float: left;
padding: 0 0 20px;
width: 350px;
}
.reviews .info-review .title {
color: #2b2b2b;
font-size: 1.385em;
line-height: 1.2em;
}
.reviews .info-review .but-review {
float: left;
padding: 20px 0 0;
}
.reviews .info-review .addreview {
background: url(@templates_base@/img/icon-addreview.jpg) no-repeat 0 0;
display: block;
height: 22px;
line-height: 22px;
padding: 0 0 0 30px;
}
.reviews .info-review .sortby {
color: #585858;
float: left;
font-weight: bold;
padding: 20px 0 0 20px;
}
.reviews .overall-review {
float: right;
width: 215px;
}
.reviews .overall-review p {
color: #585858;
float: left;
font-weight: bold;
padding: 0 10px 0 0;
}
.reviews .overall-review .overall-detail {
float: left;
}
.reviews .overall-review .overall-detail i {
float: left;
width: 35px;
}
.reviews .overall-review .overall-detail span {
float: left;
width: 75px;
}
.reviews .row-review {
border-top: 1px solid #d0d0d0;
clear: both !important;
float: left;
padding: 15px 0;
width: 100%;
}
.reviews .row-review .user { color: #2275cd; font-weight: bold; padding: 0 0 10px; }
.reviews .row-review .text-review { color: #000; padding: 0 0 10px; }
.reviews .row-review .optional-review { color: #000; font-size: 0.846em; }
.reviews .row-review .optional-review p {
float: left;
padding: 0 20px 0 0;
}
.reviews .row-review .optional-review em { color: #8b8b8b; }
.reviews .row-review .optional-review p.rat img { margin-bottom: -2px; }
.reviews .row-review .optional-review p.date { float: right; padding: 0; text-align: right; }
.reviews .row-review .optional-review a { color: #000; }
.reviews .row-review .optional-review a.yes { color: #009000; font-weight: bold; }
.reviews .row-review .optional-review a.no { color: #ae0000; font-weight: bold; }
/*** Pagination ***/
.product-detail .pagination { padding: 20px 0 10px; }
/* Profile Blocks
*******************************************************************************/
.profile {
background-color: #fff;
border: 1px solid #d0d0d0;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
padding: 20px 30px;
width: auto;
}
.profile.registerpage {
border: none;
padding: 0 30px;
width: 680px;
-webkit-border-radius: 0;
-moz-border-radius: 0;
border-radius: 0;
}
.profile-title {
border-bottom: 1px solid #d0d0d0;
margin-bottom: 15px;
padding-bottom: 15px;
}
.profile h1, .review h1 {
color: #525252;
float: left;
font: 1.538em Verdana,Arial,Tahoma,Sans-Serif;
}
.profile p.req {
color: #3e85d2;
float: right;
font-size: 1em;
font-weight: bold;
padding-top: 10px;
}
.profile .halfcol {
float: left;
padding: 0 15px 0 0;
width: 315px;
}
.profile .halfcol-last {
padding: 0;
position: relative;
}
.profile-form label {
display: block;
font-weight: bold;
padding-bottom: 3px;
}
.profile-form.left label {
display: inline;
padding-bottom: 0px;
float: left;
padding-top: 3px;
width: 90px;
}
.field-content label {
display: inline;
font-weight: normal;
padding: 0;
}
.red {
color: #cd0000;
font-weight: normal;
padding: 0 0 0 5px;
}
.form.profile-form p {
clear: both !important;
float: left;
padding: 5px 0;
}
.form.profile-form .field { width: 270px; }
.form.profile-form .alt2 .field { width: 150px; }
.field.statusSuccess {
background: url(@templates_base@/img/bg-field-success.jpg) repeat-x 0 0;
border: 1px solid #80d04d !important;
}
.field.statusError, .error .field {
background: url(@templates_base@/img/bg-field-error.jpg) repeat-x 0 0;
border: 1px solid #d80000 !important;
}
.review .profile-form .field { float: left; width: 380px; }
.review .profile-form p.buttons { padding: 0 0 0 90px; width: 380px; }
.review .profile-form p.buttons em { float: right; text-align: right; width: 170px; }
.terms {
text-align: center;
width: 100%;
}
.password-block {
/*display: none;*/
float: left;
padding: 5px 0;
position: relative;
width: 100%;
}
.registerpage .password-block { display: block; }
.password-block p {
clear: none !important;
padding: 0 15px 0 0;
}
.password-block p.pasfield2 { padding: 0; }
.password-block .field { width: 121px; }
#change-password { color: #267bd1; }
.colorbar {
display: inline-block;
height: 8px;
width: 29px;
}
.password-strength { display: none; font-weight: bold; }
.password-strength .meterDefault { color: #aaa; }
.password-strength .meterFail { color: #daa; }
.password-strength .meterWarn { color: #fd6; }
.password-strength .meterGood { color: #ada; }
.password-strength .meterExcel { color: #66c133; }
.password-strength .colorbar.meterDefault { background-color: #ddd; }
.password-strength .colorbar.meterFail { background-color: #fdd; }
.password-strength .colorbar.meterWarn { background-color: #feb; }
.password-strength .colorbar.meterGood { background-color: #dfd; }
.password-strength .colorbar.meterExcel { background-color: #66c133; }
/* Cart Blocks
*******************************************************************************/
.steps {
margin: 0 auto;
width: 535px;
}
.steps li {
background: url(@templates_base@/img/icon-step.png) no-repeat 100% 40%;
color: #bdbdbd;
float: left;
font-size: 9pt;
font-weight: bold;
padding: 0 85px 0 38px;
text-transform: uppercase;
}
.steps li:first-child {
padding-left: 0;
}
.steps li:last-child {
background: none;
padding-right: 0;
}
.steps li i {
display: block;
height: 36px;
margin: 0 auto 5px;
width: 40px;
}
.steps li.step1 i { background: url(@templates_base@/img/cart-steps.png) no-repeat 0 0; }
.steps li.step2 i { background: url(@templates_base@/img/cart-steps.png) no-repeat 0 -36px; }
.steps li.step3 i { background: url(@templates_base@/img/cart-steps.png) no-repeat 0 -72px; }
.steps li a {
color: #bdbdbd;
text-decoration: none;
}
.steps li.step1.active i { background: url(@templates_base@/img/cart-steps.png) no-repeat -40px 0; }
.steps li.step2.active i { background: url(@templates_base@/img/cart-steps.png) no-repeat -40px -36px; }
.steps li.step3.active i { background: url(@templates_base@/img/cart-steps.png) no-repeat -40px -72px; }
.steps li.active a { color: #878787; }
.cart-detail {
background-color: #fff;
border: 1px solid #d0d0d0;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
margin-top: 10px;
padding: 15px 30px 50px 30px;
width: 100%;
}
.cart-detail h1 {
color: #525252;
font: 1.538em Verdana,Arial,Tahoma,Sans-Serif;
padding: 0 0 20px 0;
}
.cart-detail .halfcol {
border-right: 1px dotted #aeaeae;
float: left;
margin: 0 14px 0 0;
padding: 0 14px 0 0;
width: 465px;
}
.cart-detail .halfcol-last {
border-right: none;
margin: 0;
padding: 0;
position: relative;
}
.cart-detail .halfcol-last .badge-optional {
background: url(@templates_base@/img/badge-optional.png) no-repeat 0 0;
height: 40px;
position: absolute;
top: -44px; left: -20px;
width: 102px;
}
.cart-detail .fieldset {
background: url(@templates_base@/img/bg-form-fieldset.jpg) repeat-x 0 0;
color: #000;
font-weight: bold;
height: 26px;
line-height: 26px;
padding: 0 0 10px 50px;
position: relative;
}
.cart-detail.receipt .fieldset { padding-left: 16px; }
.cart-detail .fieldset .link {
font-weight: normal;
position: absolute;
right: 15px;
}
fieldset { padding: 0 0 15px; }
.firstline { min-height: 140px; padding: 20px 0 0; position: relative; }
.firstline .login-alt {
color: #66c133;
font-size: 1.154em;
font-weight: bold;
padding: 5px 0 20px 50px;
}
.firstline .login-alt .plashka {
right: 194px;
}
.firstline .login-alt .plashka-sel {
margin: -6px 0 0 5px;
}
.checkout-form label {
display: block;
font-weight: bold;
padding-bottom: 3px;
}
.checkout-form p {
clear: both !important;
float: left;
padding: 5px 0 5px 50px;
}
.checkout-form p.alt1 {
clear: none !important;
padding: 5px 10px 5px 50px;
width: 170px;
}
.checkout-form p.alt2 {
clear: none !important;
padding: 5px 0;
width: 120px;
}
.checkout-form .field { width: 300px; }
.checkout-form select.field { width: 311px; }
.field.statusSuccess {
background: url(@templates_base@/img/bg-field-success.jpg) repeat-x 0 0;
border: 1px solid #80d04d;
}
.field.statusError {
background: url(@templates_base@/img/bg-field-error.jpg) repeat-x 0 0;
border: 1px solid #d80000;
}
.checkout-form p.alt1 .field,
.checkout-form p.alt2 .field,
.checkout-form p.pasfield1 .field,
.checkout-form p.pasfield2 .field {
width: 100%;
}
.checkout-form .creditcard .field { width: 250px; }
.checkout-form .creditcard p.alt1.expdate .field { width: 78px; }
.checkout-form .creditcard p.alt2 .field { width: 70px; }
.creditcards { padding: 0 0 0 50px; }
.creditcards span {
display: inline-block;
height: 45px;
}
.creditcards span.paypal {
border-left: 1px solid #d3d3d3;
margin-left: 10px;
padding-left: 15px;
}
.cart-detail .password-block {
border: 1px solid #e3e3e3;
float: right;
padding: 12px 20px;
width: 390px;
}
.cart-detail .password-block p {
clear: none !important;
padding: 0 30px 0 0;
}
.cart-detail .password-block p.pasfield1 {
width: 150px;
}
.checkout-form .safe-shop {
background: url(@templates_base@/img/safe-shop.jpg) no-repeat 0 40px;
min-height: 335px;
margin: 115px 0 0 50px;
}
.checkout-form .safe-shop .title {
color: #389901;
font: bold 1.462em Verdana,Arial,Tahoma,Sans-Serif;
padding-left: 18px;
}
.checkout-form .safe-shop ul.list {
float: left;
padding: 10px 0 0 130px;
}
.checkout-form .safe-shop ul.list li {
background: url(@templates_base@/img/icon-galka.png) no-repeat 0 50%;
color: #313030;
font-weight: bold;
padding: 6px 0 6px 25px;
}
dl.total { padding: 20px 0 0; width: 240px; }
dl.total dt,
dl.total dd {
float: left;
font-weight: bold;
padding: 0 0 10px;
text-align: right;
width: 120px;
}
dl.total dt.discount { color: #bf0000; }
dl.total dd { font-size: 1.385em; }
dl.total dd span { font-size: 15px; }
dl.total dd.price1 { color: #333; font-size: 1.538em; }
dl.total dd.price2 { color: #bf0000; }
dl.total dd.price3 { font-weight: normal; }
dl.total dd.price4 { color: #3f911f; font-size: 1.538em; }
.product-discount .item-price span, .product-discount .item-discount span,
.shop-cart-row .price-cell span, .shop-cart-row .extended-price-cell span {
font-size: 12px;
}
.cart-detail .terms {
text-align: right;
width: 240px;
}
.place-button,
.place-grey-button,
.checkout-button,
.checkout-grey-button {
background: url(@templates_base@/img/order-left.jpg) no-repeat 0 0;
color: #faffed;
display: inline-block;
font-size: 1.385em;
font-weight: bold;
text-shadow: #000 0px 1px 1px;
text-decoration: none;
}
.place-grey-button,
.checkout-grey-button {
color: #000;
text-shadow: none;
}
.place-button span,
.place-grey-button span,
.checkout-button span,
.checkout-grey-button span {
background: url(@templates_base@/img/order-right.jpg) no-repeat 100% 0;
display: inline-block;
height: 37px;
line-height: 37px;
padding: 0 50px 0 30px;
}
.place-button:hover,
.place-grey-button:hover,
.checkout-button:hover,
.checkout-grey-button:hover { color: #faffed; }
.checkout-button span {
background: url(@templates_base@/img/checkout-right.jpg) no-repeat 100% 0;
padding: 0 30px 0 20px;
}
.place-grey-button {
background: url(@templates_base@/img/checkout-grey-left.jpg) no-repeat 0 0;
}
.place-grey-button span {
background: url(@templates_base@/img/order-grey-right.jpg) no-repeat 100% 0;
}
.checkout-grey-button {
background: url(@templates_base@/img/checkout-grey-left.jpg) no-repeat 0 0;
margin-top: 20px;
}
.checkout-grey-button span {
background: url(@templates_base@/img/checkout-grey-right.jpg) no-repeat 100% 0;
padding: 0 30px 0 20px;
}
.continue-button {
background: url(@templates_base@/img/bg-button-continue-right.jpg) no-repeat 100% 0;
color: #3c3c3c;
display: inline-block;
font-weight: bold;
margin-right: 20px;
text-decoration: none;
}
.continue-button span {
background: url(@templates_base@/img/bg-button-continue-left.jpg) no-repeat 0 0;
display: inline-block;
height: 26px;
line-height: 26px;
padding: 0 20px 0 25px;
}
.continue-button:hover {
color: #3c3c3c;
}
.cart-detail.receipt .success-order {
background: url(@templates_base@/img/success.png) no-repeat 30px 30px;
border-bottom: 1px solid #d0d0d0;
margin-bottom: 25px;
padding: 0 0 25px 130px;
}
.cart-detail.receipt .success-order .links {
float: right;
padding: 0;
}
.cart-detail.receipt .success-order .links a.link-print {
background: url(@templates_base@/img/icon-print.jpg) no-repeat 0 0;
display: inline-block;
font-weight: bold;
height: 32px;
line-height: 32px;
padding: 0 20px 0 40px;
}
.cart-detail.receipt .success-order .links a.link-download {
background: url(@templates_base@/img/icon-download.jpg) no-repeat 0 0;
display: inline-block;
font-weight: bold;
height: 32px;
line-height: 32px;
padding: 0 0 0 40px;
}
.cart-detail.receipt .success-order .green {
color: #009f00;
font: 1.538em Tahoma,Verdana,Arial,Sans-Serif;
}
.cart-detail.receipt .success-order p {
padding: 5px 0;
}
.cart-detail.receipt p { padding-left: 16px; }
.cart-detail.receipt dl.info {
padding-left: 16px;
}
.cart-detail.receipt dl.info dt {
clear: both !important;
float: left;
font-weight: bold;
padding: 5px 15px 5px 0;
width: 90px;
}
.cart-detail.receipt dl.info dd {
float: left;
padding: 5px 15px 5px 0;
}
.cart-detail.receipt .items {
border-bottom: 1px solid #d1d1d1;
margin-top: 30px;
width: 100%;
}
.cart-detail.shoppingcart .items {
margin-top: 0;
}
.cart-detail.receipt .items thead {
background: url(@templates_base@/img/bg-form-fieldset.jpg) repeat-x 0 0;
border: 1px solid #adadad;
}
.cart-detail.receipt .items th {
color: #000;
font-weight: bold;
padding: 5px 10px;
}
.cart-detail.receipt .items td {
border-top: 1px solid #d1d1d1;
color: #000;
padding: 10px;
text-align: center;
vertical-align: middle;
}
.cart-detail.receipt .items tr:first-child td {
border-top: none;
}
.cart-detail.receipt .items td.options-td {
background-color: #f7f7f7;
border-top: none;
color: #686767;
text-align: left;
}
.cart-detail.receipt .items td.options-td .sel-options { float: left; padding: 0 20px 0 0; }
.cart-detail.receipt .items .item-img { width: 70px; }
.cart-detail.receipt .items .item-total { font-weight: bold; }
.cart-detail.receipt .items .item-title {
color: #333;
font-weight: bold;
text-align: left;
}
.cart-detail.receipt .items .item-quantity { position: relative; }
.cart-detail.receipt .items .item-quantity .field { text-align: center; width: 30px; }
.formStatus {
position: absolute;
top: 37px;
left: 15px;
display: block;
z-index: 5000;
cursor: pointer;
}
.formStatus .formContent {
width: 100%;
position:relative;
z-index:5001;
color: #fff;
white-space: nowrap;
font-family: Arial;
font-size: 12px;
box-shadow: 0 0 3px #444;
-moz-box-shadow: 0 0 3px #444;
-webkit-box-shadow: 0 0 3px #444;
padding: 4px 10px 4px 10px;
border-radius: 3px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
}
.formStatus .formArrow {
height: 11px;
margin: -34px 0 0 22px;
position: relative;
width: 21px;
z-index: 5006;
}
.formStatus.formSuccess .formContent { background: #398d1d url(@templates_base@/img/validate/con-success.png) repeat-x 0 0; }
.formStatus.formSuccess .formArrow { background: url(@templates_base@/img/validate/con-success-arrow.png) no-repeat 0 0; }
.formStatus.formError .formContent { background: #990000 url(@templates_base@/img/validate/con-error.png) repeat-x 0 0; }
.formStatus.formError .formArrow { background: url(@templates_base@/img/validate/con-error-arrow.png) no-repeat 0 0; }
+.compare-bubble {
+ position: relative;
+}
+
+.compare-bubble .formStatus {
+ top: -25px;
+ left: -94px;
+}
+
+.compare-bubble .formStatus .formContent { width: auto }
+
+.compare-bubble .formStatus .formArrow {
+ margin: 0px 0 0 20px;
+ position: relative;
+}
+
+.compare-bubble .formStatus.formSuccess .formArrow { background: url(@templates_base@/img/validate/con-success-arrow-bottom.png) no-repeat 0 0; }
+.compare-bubble .formStatus.formError .formArrow { background: url(@templates_base@/img/validate/con-error-arrow-bottom.png) no-repeat 0 0; }
+
+.compare-bubble .formStatus.formNeutral .formContent { background: #990000 url(@templates_base@/img/validate/con-neutral.png) repeat-x 0 0; }
+.compare-bubble .formStatus.formNeutral .formArrow { background: url(@templates_base@/img/validate/con-neutral-arrow-bottom.png) no-repeat 0 0; }
+
.cart-detail.receipt .items .item-quantity .formStatus { left: 0; }
.cart-detail.receipt dl.total { float: right; padding-right: 30px; }
.cart-detail.receipt .discount-block {
float: left;
padding: 20px 0 0;
width: 300px;
}
.cart-detail.receipt .discount-block p { padding: 5px 0; }
.cart-detail.receipt .discount-block .field { width: 170px; }
.cart-detail.receipt .discount-block .num-discount { position: relative; }
.cart-detail.receipt .discount-block .formStatus { left: -15px; }
.cart-detail.shoppingcart h1 { float: left; }
.cart-detail.shoppingcart .buttons-right { float: right; text-align: right; }
.cart-detail.shoppingcart .buttons-right dl.total { float: none; padding-right: 0; }
/* Review Blocks
*******************************************************************************/
.review {
background-color: #fff;
width: 500px;
}
.review h1 {
color: #525252;
font: 1.538em Verdana,Arial,Tahoma,Sans-Serif;
padding: 0 0 20px;
}
.profile-form label {
float: left;
font-weight: bold;
padding-top: 3px;
width: 90px;
}
.red {
color: #cd0000;
font-weight: normal;
padding: 0 0 0 5px;
}
.profile-form p {
clear: both !important;
float: left;
padding: 5px 0;
}
.profile-form .field { float: left; width: 380px; }
.profile-form textarea.field {
height: 70px;
}
.profile-form p span { float: left; width: 380px; }
.profile-form p.buttons { padding: 0 0 0 90px; width: 380px; }
.profile-form p.buttons em { float: right; text-align: right; width: 170px; }
.review .success {
color: #0b9f00;
font-size: 1.385em;
padding: 80px 0 20px;
text-align: center;
}
.review .warning {
padding-bottom: 30px;
text-align: center;
}
.review .button {
text-align: center;
}
/* Compare Page
*******************************************************************************/
#content .compare { padding: 20px; }
#content .compare .good-item {
border-right: 1px dotted #333;
float: left;
min-height: 450px;
padding: 0 0 15px;
width: 225px;
}
#content .compare .good-item.last-child {
border-right: none;
}
#content .compare .good-item .button-delete {
padding: 0 0 10px 0;
text-align: center;
}
.good-item .rating { padding: 10px 0 0; text-align: center; }
.good-item .rating p { padding: 5px 0 0; }
.good-item .har { text-align: left; }
.good-item .har dt { float: left; font-weight: bold; padding: 0 10px 3px 0; width: 100px; }
.good-item .har dd { float: left; width: 80px; }
.buttons-block { padding-top: 120px; text-align: center; }
.compare-button {
background: url(@templates_base@/img/bg-button-compare-left.jpg) no-repeat 0 0;
color: #323232;
display: inline-block;
font-size: 1.385em;
font-weight: bold;
text-decoration: none;
}
.compare-button span {
background: url(@templates_base@/img/bg-button-compare-right.jpg) no-repeat 100% 0;
display: inline-block;
height: 60px;
padding: 10px 20px;
text-align: center;
}
/*** Compare accordion ***/
#compare-menu h3 {
background: #fff url(@templates_base@/img/bg-form-fieldset.jpg) repeat-x 0 0;
color: #5b5b5b;
cursor: pointer;
font-weight: bold;
height: 26px;
line-height: 26px;
padding: 0 16px;
position: relative;
}
#compare-menu a { color: #5b5b5b; padding-left: 20px; text-decoration: none; }
#compare-menu h3.active a { color: #fff; }
#compare-menu .ui-icon-circle-arrow-e {
background: url(@templates_base@/img/bullet-menu.png) no-repeat 0 -22px;
height: 6px;
width: 10px;
}
#compare-menu .ui-icon-circle-arrow-s {
background: url(@templates_base@/img/bullet-menu.png) no-repeat 0 -6px;
height: 6px;
width: 10px;
}
#compare-menu .good-item-cell {
border-right: 1px dotted #333;
float: left;
max-height: 450px;
padding-bottom: 25px;
width: 225px;
}
#compare-menu .good-item-cell .description {
max-height: 450px;
overflow-x: hidden;
padding: 5px 16px;
}
\ No newline at end of file
Index: branches/1.0.x/inc/js/jquery.scripts.js
===================================================================
--- branches/1.0.x/inc/js/jquery.scripts.js (revision 15042)
+++ branches/1.0.x/inc/js/jquery.scripts.js (revision 15043)
@@ -1,309 +1,345 @@
var $auto_search_request = null;
/* === General usage functions === */
function jq($selector, $delimiter) {
return ($selector + '').replace(new RegExp('[.\\\\+*?\\[\\^\\]$(){}=!<>|:\\' + ($delimiter || '') + '-]', 'g'), '\\$&');
}
function in_array(needle, haystack)
{
return array_search(needle, haystack) != -1;
}
function array_search(needle, haystack)
{
for (var i=0; i<haystack.length; i++)
{
if (haystack[i] == needle) return i;
}
return -1;
}
Array.prototype.diff = function(a) {
return this.filter(
function (i) {
return a.indexOf(i) == -1;
}
);
};
function get_control($mask, $field, $append, $prepend) {
$append = $append !== undefined ? '_' + $append : '';
$prepend = $prepend !== undefined ? $prepend + '_' : '';
return document.getElementById( $prepend + $mask.replace('#FIELD_NAME#', $field) + $append );
}
function update_checkbox_options($cb_mask, $hidden_id, $form_selector)
{
var $tmp = '',
$kf = $($form_selector !== undefined ? $form_selector : '#' + $form_name).get(0);
for (var i = 0; i < $kf.elements.length; i++) {
if ( $kf.elements[i].id.match($cb_mask) ) {
if ($kf.elements[i].checked) {
$tmp += '|'+$kf.elements[i].value;
}
}
}
if ($tmp.length > 0) {
$tmp += '|';
}
document.getElementById($hidden_id).value = $tmp.replace(/,$/, '');
}
function watch_anchor () {
var $last_anchor = '';
setInterval(
function () {
if (window.location.hash != $last_anchor) {
$last_anchor = window.location.hash;
var $new_anchor = $last_anchor ? $last_anchor.substring(1) : '';
$('body').trigger('anchorchanged', [$new_anchor]);
}
}, 100
);
}
function sort_object($object) {
// Setup Arrays
var $sorted_keys = [], $sorted_object = {};
for (var $property_name in $object) {
$sorted_keys.push($property_name);
}
$sorted_keys.sort();
$($sorted_keys).each(
function () {
$sorted_object[this] = $object[this];
}
);
return $sorted_object;
}
function compare_product($product_id, $compare_event, $callback) {
if ( $compare_event === undefined || $compare_event === true ) {
$compare_event = 'OnAddToCompare';
}
else if ( $compare_event === false ) {
$compare_event = 'OnRemoveFromCompare';
}
var $url = FormManager.getURL('p', 'elements/side_boxes/compare.elm', $compare_event);
$.get(
$url,
{'p_id': $product_id},
function ($data) {
$('#compare-products-sidebox').replaceWith($data);
if ( $callback !== undefined && $.isFunction($callback) ) {
$callback($data);
}
}
);
return false;
}
function redirect($url)
{
window.location.href = $url;
}
function search_on_change ($e) {
if ($auto_search_request != null) {
$auto_search_request.abort();
}
if ( $e.which == 13 || $.trim( $('#search-box-small-input').val() ).length < 3 ) {
$('.search-box-small-results').hide();
return ;
}
var $form = $('#search_form');
$auto_search_request = $.get(
$form.attr('action'),
$form.serialize(),
function ($data) {
$('.search-box-small-header').html($data);
if ( $.trim($data) != '' ) {
$('.search-box-small-results').show();
}
else {
$('.search-box-small-clear').click();
}
}
);
}
+function create_tooltip($input, $text, $css_class, $remove_function) {
+ var $tooltip = $input.next('.formStatus'),
+ $timer = $input.data('timer');
+
+ clearTimeout($timer);
+
+ if ( $tooltip.length == 1 ) {
+ $tooltip.hide().remove();
+ }
+
+ var $tooltip = $('<div class="formStatus ' + $css_class + '" style="display: none;">\
+ <div class="formContent">' + $text + '</div>\
+ <div class="formArrow"></div>\
+ </div>');
+
+ $input.after($tooltip);
+
+ if ($remove_function === undefined) {
+ $remove_function = remove_tooltip;
+ }
+
+ $tooltip.fadeIn(
+ 'slow',
+ function () {
+ $timer = setTimeout( function() { $remove_function($input); }, 2000);
+ $input.data('timer', $timer);
+ }
+ );
+}
+
+function remove_tooltip ($input) {
+ var $tooltip = $input.next('.formStatus');
+
+ $tooltip.fadeOut('slow', function() { $tooltip.remove(); });
+}
+
/* === DBlocks class === */
function DBlocks() {
var $me = this;
this.selectors = ['#lang', '#currency', '#login', /*'#login-alt',*/ '#profile'];
$(document).ready(
function () {
$me.init();
}
);
}
DBlocks.prototype.init = function () {
var $manager = this;
$( this.selectors.join(', ') ).unbind('click').click(
function($e, $now) {
var $me = $(this),
$parent = $me.parent();
if ( $parent.is('.plashka-sel') ) {
$parent.removeClass('plashka-sel');
if ( $now === undefined || $now === false ) {
$('#' + $me.attr('id') + '-sel').fadeOut();
}
else {
$('#' + $me.attr('id') + '-sel').hide();
}
}
else {
$manager.hideOthers($me);
$parent.addClass('plashka-sel');
$('#' + $me.attr('id') + '-sel').fadeIn();
}
return false;
}
);
$('.icon-close').click(
function() {
$('#login').parent().removeClass('plashka-sel'); // ,#login-alt
$('#login-sel').fadeOut(); // , #login-alt-sel
return false;
}
);
}
DBlocks.prototype.hideOthers = function ($current) {
$( this.selectors.join(', ') ).not($current).each(
function () {
var $me = $(this),
$parent = $me.parent();
if ( $parent.is('.plashka-sel') ) {
$me.trigger('click', [true]);
}
}
);
}
/* === RatingManager class === */
function RatingManager ($url) {
this.Url = $url;
}
RatingManager.prototype.makeVote = function ($vote, $prefix, $id, $size) {
var $url = this.Url.replace('#PREFIX#', $prefix).replace('#VOTE#', $vote).replace('#ID#', $id).replace('#SIZE#', $size);
$.get(
$url,
function ($response) {
if ($response.substring(0, 5) == '@err:') {
alert( $response.substring(5) );
return ;
}
document.getElementById('page_rating_' + $id).innerHTML = $response;
}
)
}
function add_to_cart_handler() {
var $me = $(this),
$qty = $me.attr('qty_id') !== undefined ? get_cart_qty('#' + $me.attr('qty_id')) : 1,
$url = $me.attr('href');
if ( $url.indexOf('bubble') == -1 ) {
// proceed with regular redirect
return true;
}
if ( $me.hasClass('addedtocart') ) {
// disabled button
return false;
}
var $timer_id = $('.basketStatus').data('hide_timer');
clearTimeout($timer_id);
$.get(
$url + '&qty=' + $qty,
function ($bubble_content) {
display_cart_bubble($bubble_content, $qty);
if ( $me.hasClass('addtocart') ) {
$me.removeClass('addtocart').addClass('addedtocart').html('Added to Cart');
}
}
);
return false;
}
function get_cart_qty ($qty_selector) {
var $ret = parseInt( $($qty_selector).val() );
if ( isNaN($ret) ) {
$ret = 1;
}
return $ret;
}
function display_cart_bubble ($bubble_content, $qty) {
var $bubble = $('.basketStatus');
$('.basketContent', $bubble).html( $bubble_content.replace(/#QTY#/g, $qty) );
$bubble
.stop(true, true)
.fadeIn(
'slow',
function () {
var $timer = setTimeout(function(){ $bubble.fadeOut('slow'); }, 2000);
$bubble.data('hide_timer', $timer);
}
);
}
/* === Startup === */
$(document).ready(
function() {
watch_anchor();
$('#change-password').click(
function($e) {
$('#password-show').hide();
$('#password-block').fadeIn();
return false;
}
);
$('.addtocart').click(add_to_cart_handler);
}
);
\ No newline at end of file
Index: branches/1.0.x/inc/js/cart_manager.js
===================================================================
--- branches/1.0.x/inc/js/cart_manager.js (revision 15042)
+++ branches/1.0.x/inc/js/cart_manager.js (revision 15043)
@@ -1,608 +1,594 @@
function ShopCartManager( $settings ) {
this.updateUrl = '';
this.orderInfo = {};
this.constants = {};
this.currencyMask = '%s';
this.debugMode = false;
$.extend(this, $settings);
this.rowTimers = {};
var $me = this;
$(document).ready(
function () {
$me.init();
}
);
}
ShopCartManager.prototype.init = function () {
var $me = this;
this.process(this.orderInfo);
$('.delete-cart-link').click(
function ($e) {
var $order_item_id = $(this).parents('tr:first').attr('order_item_id');
$me.apply( [{name: 'delete_id', value: $order_item_id}] );
return false;
}
);
$('.product-qty:input', '#shopping-cart-form')
.blur(
function ($e) {
var $row_index = $(this).parents('tr[row_index]:first').attr('row_index');
if ( $me.debugMode ) {
console.log('blur on ', $row_index, ' row');
}
$me.clearRowTimers($row_index);
if ( $me.debugMode ) {
console.log('doing apply (from blur) on ', $row_index, ' row');
}
$me.apply();
return false;
}
)
.keyup(
function ($e) {
var $row_index = $(this).parents('tr[row_index]:first').attr('row_index');
if ( $me.debugMode ) {
console.log('keyup on ', $row_index, ' row');
}
$me.clearRowTimers($row_index);
$me.rowTimers[$row_index] = setTimeout(
function() {
if ( $me.debugMode ) {
console.log('doing apply (from keyup) on ', $row_index, ' row');
}
$me.apply();
}
, 2000
);
}
);
$('#remove-coupon').click(
function ($e) {
$me.apply( [{name: 'remove', value: 'coupon'}] );
return false;
}
);
$('#remove-gift-certificate').click(
function ($e) {
$me.apply( [{name: 'remove', value: 'gift_certificate'}] );
return false;
}
);
$('#update-cart, #apply-coupon, #apply-gift-certificate').click(
function ($e) {
$me.apply();
return false;
}
);
}
ShopCartManager.prototype.clearRowTimers = function ($row_index) {
if ( this.rowTimers[$row_index] !== undefined ) {
if ( this.debugMode ) {
console.log('cleartimers on ', $row_index, ' row -> found = delete');
}
clearTimeout(this.rowTimers[$row_index]);
delete this.rowTimers[$row_index];
}
else if ( this.debugMode ) {
console.log('cleartimers on ', $row_index, ' row -> not found = skip');
}
}
ShopCartManager.prototype.apply = function ($params) {
var $me = this;
$.post(
this.updateUrl,
this.getFormData($params),
function ($data) {
$data = eval('(' + $data + ')');
$me.process($data);
}
)
}
ShopCartManager.prototype.getFormData = function ($params) {
var $ret = $('#shopping-cart-form').serializeArray();
if ( $params !== undefined ) {
while( $params.length > 0 ) {
$ret.push( $params.shift() );
}
}
return $ret;
}
ShopCartManager.prototype.process = function ($data) {
// 1. row missing ajax response -> was deleted in db
// 2. row missing in HTML -> was added in db
var $me = this,
$old_rows = this.getOldRows(),
$new_rows = this.getNewRows($data),
$add_rows = $new_rows.diff($old_rows),
$delete_rows = $old_rows.diff($new_rows);
if ( this.debugMode ) {
console.log('proessing data: ', $data);
}
// add rows
$($add_rows).each(
function () {
$me.addRow( this, $data.items[this] );
}
);
// delete rows
$($delete_rows).each(
function () {
var $row = $me.getRowByIndex(this),
$options_row = $row.next();
// $row.next('tr.separator').remove();
$row.remove();
if ( $('td.options-td', $options_row).length == 1 ) {
$options_row.remove();
}
}
);
this.updateExistingRows($data);
this.showErrors($data);
this.showFooter($data);
if ( this.debugMode ) {
console.log('old: ', $old_rows, '; new: ', $new_rows, '; add: ', $add_rows, '; delete: ', $delete_rows);
}
}
ShopCartManager.prototype.addRow = function ($row_index, $row_data) {
if ( this.debugMode ) {
console.log('adding row: ', $row_data);
}
var $html = $('#product-row-mask').val(),
$value = '';
/*f: OrderItemId ; v: 101
f: ProductName ; v: Product With Stock Limit = 5; with backorder
f: BackOrderFlag ; v: 1
f: FlatPrice ; v: 2
f: Price ; v: 1.2308
f: Quantity ; v: 2
f: Virtual ; v: 0
f: cust_Availability ; v:*/
for (var $field in $row_data.fields) {
$value = $row_data.fields[$field];
if ( $field == 'Price' || $field == 'FlatPrice' ) {
$value = this.formatPrice($value);
}
$html = $html.replace(new RegExp('{field:' + $field + '}', 'g'), $value);
if ( this.debugMode ) {
console.log('f: ', $field, '; v: ', $value);
}
}
$html = $html.replace(/{ROW_INDEX}/g, $row_index);
// $html = $html.replace(/{DISCOUNT}/g, $row_index);
// $html = $html.replace(/{EXTENDED_PRICE}/g, $row_index);
// var $separator = $( $('#product-row-separator-mask').val() );
$('.shop-cart-row:last').after($html);
/*$('.shop-cart-row:last').after($separator);
$separator.after($html);*/
}
ShopCartManager.prototype.updateExistingRows = function ($data) {
if ( $.isArray($data.items) ) {
// todo: hide empty shopping cart & show special message
$('#item-count').html(0);
return;
}
var $row_count = 0;
for (var $row_index in $data.items) {
var $fields = $data.items[$row_index].fields,
$discount = $fields['FlatPrice'] - $fields['Price'],
$product_row = this.getRowByIndex($row_index),
$discount_container = $('.product-discount', $product_row);
// update product title
var $product_with_link = $('.product-with-link', $product_row);
$('a:first', $product_with_link)
.attr('href', $data.items[$row_index].product_url)
.html($fields['ProductName']);
$product_with_link.toggle( $fields['Virtual'] == 0 );
$('.product-without-link', $product_row)
.toggle( $fields['Virtual'] == 1 )
.html($fields['ProductName']);
$('.free-shipping', $product_row).toggle( $data.items[$row_index].free_promo_shipping );
$('.back-order-mark', $product_row).toggle( $fields['BackOrderFlag'] > 0 );
$('.product-availability', $product_row)
.toggle( $fields['cust_Availability'] != '' )
.html('<br/>' + $fields['cust_Availability']);
$('.product-qty.read-only', $product_row).toggle( $fields['Type'] != this.constants['PRODUCT_TYPE_TANGIBLE'] );
$('.product-qty:not(.read-only)', $product_row).toggle( $fields['Type'] == this.constants['PRODUCT_TYPE_TANGIBLE'] );
// update product specific discount
$('.item-price', $discount_container).html( this.formatPrice($fields['FlatPrice']) );
$('.item-discount', $discount_container).html( '- ' + this.formatPrice($discount) );
$discount_container.toggle( $discount > 0 );
// update product prices
$('.price-cell', $product_row).html( this.formatPrice($fields['Price']) );
$('.extended-price-cell', $product_row).html( this.formatPrice($fields['Quantity'] * $fields['Price']) );
$row_count++;
}
$('#item-count').html($row_count);
}
ShopCartManager.prototype.showErrors = function ($data) {
var $error_code = 0, $error_info = [],
$row_index = '', $field = '',
$tooltip_options = '',
$coupon_error_code = this.getErrorByType('OrderCheckoutErrorType::COUPON', $data),
$gift_certificate_error_code = this.getErrorByType('OrderCheckoutErrorType::GIFT_CERTIFICATE', $data),
$discount_error_code = this.getErrorByType('OrderCheckoutErrorType::DISCOUNT', $data);
if ( $.isArray($data.errors) ) {
// when no error, then it's array
return ;
}
if ( $coupon_error_code ) {
if ( $coupon_error_code == this.constants['OrderCheckoutError::COUPON_APPLIED'] ) {
var $input = $('.coupon-name', '#coupon-row');
}
else {
var $input = $('.coupon-code:input', '#coupon-row');
}
$tooltip_options = this.getCouponErrorOptions($coupon_error_code);
if ( $tooltip_options ) {
this.createTooltip($input, $tooltip_options);
}
}
if ( $gift_certificate_error_code ) {
if ( $gift_certificate_error_code == this.constants['OrderCheckoutError::GC_APPLIED'] ) {
var $input = $('.gift-certificate-discount', '#gift-certificate-row');
}
else {
var $input = $('.gift-certificate-code:input', '#gift-certificate-row');
}
$tooltip_options = this.getGiftCertificateErrorOptions($gift_certificate_error_code);
if ( $tooltip_options ) {
this.createTooltip($input, $tooltip_options);
}
}
if ( $discount_error_code ) {
$input = $('#sub-total');
$tooltip_options = this.getDiscountErrorOptions($discount_error_code);
if ( $tooltip_options ) {
this.createTooltip($input, $tooltip_options);
}
}
for (var $error_type in $data.errors) {
$tooltip_options = '';
$error_info = $error_type.split(':');
$error_code = parseInt( $data.errors[$error_type] );
if ( $error_info[0] == this.constants['OrderCheckoutErrorType::PRODUCT'] ) {
this.processProductError($error_info, $error_code, $data);
}
if ( this.debugMode ) {
console.log('error_type: ', $error_type, '; error_code: ', $error_code, '; row_index: ', $row_index, '; field: ', $field);
}
}
}
ShopCartManager.prototype.showFooter = function ($data) {
var $discount_total = $data.order['DiscountTotal'];
// update "Total Savings"
$('#discount-row').toggle( $discount_total > 0 );
$('.price2', '#discount-row').html( this.formatPrice($discount_total) );
// update Coupon Info
if ( $data.order['CouponId'] == 0 ) {
$('.coupon-code', '#coupon-row').val('');
}
$('.used', '#coupon-row').toggle( $data.order['CouponId'] > 0 );
$('.not-used', '#coupon-row').toggle( $data.order['CouponId'] == 0 );
$('.coupon-name', '#coupon-row').html( $data.order['CouponName'] );
// update Gift Certificate Info
if ( $data.order['GiftCertificateId'] == 0 ) {
$('.gift-certificate-code', '#gift-certificate-row').val('');
}
$('.used', '#gift-certificate-row').toggle( $data.order['GiftCertificateId'] > 0 );
$('.not-used', '#gift-certificate-row').toggle( $data.order['GiftCertificateId'] == 0 );
$('.gift-certificate-discount', '#gift-certificate-row').html( this.formatPrice($data.order['GiftCertificateDiscount']) );
// update "subtotal"
$('#sub-total').html( this.formatPrice($data.order['SubTotal']) );
// update page header
$('#header-items-in-cart').html( $data.order['ItemsInCart'] );
$('#header-cart-subtotal').html( this.formatPrice($data.order['SubTotal'], 'i') );
}
ShopCartManager.prototype.processProductError = function ($error_info, $error_code, $data) {
var $error_type = $error_info.shift(),
$field = $error_info.pop(),
$row_index = $error_info.join(':');
if ( this.getRowByIndex($row_index).length == 0 ) {
// row was deleted
return ;
}
if ( $field == 'Quantity' ) {
var $input = $('.product-qty:input', this.getRowByIndex($row_index)),
$allow_qty_replace = [
this.constants['OrderCheckoutError::FIELD_UPDATE_SUCCESS'],
this.constants['OrderCheckoutError::QTY_CHANGED_TO_MINIMAL']
];
if ( in_array($error_code, $allow_qty_replace) && $input.val() != $data.items[$row_index]['fields']['Quantity'] ) {
// qty changed during ord:OnRecalculateItems
$input.val( $data.items[$row_index]['fields']['Quantity'] );
}
$tooltip_options = this.getQtyErrorOptions($error_code);
if ( $tooltip_options ) {
this.createTooltip($input, $tooltip_options);
}
}
}
ShopCartManager.prototype.getErrorByType = function ($contant_name, $data) {
var $error_type = this.constants[$contant_name];
return $data.errors[$error_type] !== undefined ? $data.errors[$error_type] : false;
}
ShopCartManager.prototype.getRowByIndex = function ($row_index) {
return $("tr.shop-cart-row[row_index='" + $row_index + "']", '#shop-cart-table');
}
ShopCartManager.prototype.getOldRows = function () {
var $ret = [];
$('tr.shop-cart-row', '#shop-cart-table').each(
function () {
$ret.push( $(this).attr('row_index') );
}
);
return $ret;
}
ShopCartManager.prototype.getNewRows = function ($data) {
var $ret = [];
if ( $.isArray($data.items) ) {
return $data.items;
}
for (var $row_index in $data.items) {
$ret.push( $row_index );
}
return $ret;
}
ShopCartManager.prototype.formatPrice = function ($price, $decimal_tag) {
if ( $decimal_tag === undefined ) {
$decimal_tag = 'span';
}
var $price_parts = $price.toFixed(2).toString().split('.');
return this.currencyMask.replace('%s', $price_parts[0] + '.<' + $decimal_tag + '>' + $price_parts[1] + '</' + $decimal_tag + '>');
}
ShopCartManager.prototype.getQtyErrorOptions = function ($error_code) {
var $ret = false;
switch ($error_code) {
case this.constants['OrderCheckoutError::FIELD_UPDATE_SUCCESS']:
$ret = this.getTooltipOptions('FIELD_UPDATE_SUCCESS', 'ui-tooltip-green');
break;
case this.constants['OrderCheckoutError::FIELD_UPDATE_ERROR']:
$ret = this.getTooltipOptions('FIELD_UPDATE_ERROR', 'ui-tooltip-red');
break;
case this.constants['OrderCheckoutError::QTY_UNAVAILABLE']:
$ret = this.getTooltipOptions('QTY_UNAVAILABLE', 'ui-tooltip-red');
break;
case this.constants['OrderCheckoutError::QTY_OUT_OF_STOCK']:
$ret = this.getTooltipOptions('QTY_OUT_OF_STOCK', 'ui-tooltip-red');
break;
case this.constants['OrderCheckoutError::QTY_CHANGED_TO_MINIMAL']:
$ret = this.getTooltipOptions('QTY_CHANGED_TO_MINIMAL', 'ui-tooltip-green');
break;
}
return $ret;
}
ShopCartManager.prototype.getCouponErrorOptions = function ($error_code) {
var $ret = false;
switch ($error_code) {
case this.constants['OrderCheckoutError::COUPON_APPLIED']: // for label
$ret = this.getTooltipOptions('COUPON_APPLIED', 'ui-tooltip-green');
break;
// all next error for input
case this.constants['OrderCheckoutError::COUPON_REMOVED']:
$ret = this.getTooltipOptions('COUPON_REMOVED', 'ui-tooltip-green');
break;
case this.constants['OrderCheckoutError::COUPON_REMOVED_AUTOMATICALLY']:
$ret = this.getTooltipOptions('COUPON_REMOVED_AUTOMATICALLY', 'ui-tooltip-green');
break;
case this.constants['OrderCheckoutError::COUPON_CODE_INVALID']:
$ret = this.getTooltipOptions('COUPON_CODE_INVALID', 'ui-tooltip-red');
break;
case this.constants['OrderCheckoutError::COUPON_CODE_EXPIRED']:
$ret = this.getTooltipOptions('COUPON_CODE_EXPIRED', 'ui-tooltip-red');
break;
}
return $ret;
}
ShopCartManager.prototype.getGiftCertificateErrorOptions = function ($error_code) {
var $ret = false;
switch ($error_code) {
case this.constants['OrderCheckoutError::GC_APPLIED']: // for label
$ret = this.getTooltipOptions('GC_APPLIED', 'ui-tooltip-green');
break;
// all next error for input
case this.constants['OrderCheckoutError::GC_REMOVED']:
$ret = this.getTooltipOptions('GC_REMOVED', 'ui-tooltip-green');
break;
case this.constants['OrderCheckoutError::GC_REMOVED_AUTOMATICALLY']:
$ret = this.getTooltipOptions('GC_REMOVED_AUTOMATICALLY', 'ui-tooltip-green');
break;
case this.constants['OrderCheckoutError::GC_CODE_INVALID']:
$ret = this.getTooltipOptions('GC_CODE_INVALID', 'ui-tooltip-red');
break;
case this.constants['OrderCheckoutError::GC_CODE_EXPIRED']:
$ret = this.getTooltipOptions('GC_CODE_EXPIRED', 'ui-tooltip-red');
break;
}
return $ret;
}
ShopCartManager.prototype.getDiscountErrorOptions = function ($error_code) {
var $ret = false;
switch ($error_code) {
case this.constants['OrderCheckoutError::DISCOUNT_APPLIED']:
$ret = this.getTooltipOptions('DISCOUNT_APPLIED', 'ui-tooltip-green');
break;
case this.constants['OrderCheckoutError::DISCOUNT_REMOVED']:
$ret = this.getTooltipOptions('DISCOUNT_REMOVED', 'ui-tooltip-green');
break;
}
return $ret;
}
ShopCartManager.prototype.createTooltip = function ($input, $tooltip_options) {
var $me = this,
- $tooltip = $input.next('.formStatus'),
- $is_error = $tooltip_options.classes == 'ui-tooltip-red',
- $timer = $input.data('timer');
+ $is_error = $tooltip_options.classes == 'ui-tooltip-red';
- clearTimeout($timer);
-
- if ( $tooltip.length == 1 ) {
- $tooltip.hide().remove();
- }
-
- $tooltip = $('<div class="formStatus ' + ($is_error ? 'formError' : 'formSuccess') + '" style="display: none;">\
- <div class="formContent">' + $tooltip_options.text + '</div>\
- <div class="formArrow"></div>\
- </div>');
-
- $input
- .after($tooltip)
- .removeClass('statusSuccess statusError')
- .addClass($is_error ? 'statusError' : 'statusSuccess');
-
- $tooltip.fadeIn(
- 'slow',
- function () {
- $timer = setTimeout( function() { $me.removeTooltip($input); }, 2000);
- $input.data('timer', $timer);
+ create_tooltip(
+ $input,
+ $tooltip_options.text,
+ $is_error ? 'formError' : 'formSuccess',
+ function ($input) {
+ $me.removeTooltip($input);
}
);
- $input.focus( function() { $me.removeTooltip($input); } );
+ $input
+ .removeClass('statusSuccess statusError')
+ .addClass($is_error ? 'statusError' : 'statusSuccess')
+ .focus( function() { $me.removeTooltip($input); } );
}
ShopCartManager.prototype.removeTooltip = function ($input) {
- var $tooltip = $input.next('.formStatus');
+ remove_tooltip($input);
+
$input.removeClass('statusError').removeClass('statusSuccess');
- $tooltip.fadeOut('slow', function() { $tooltip.remove(); });
}
ShopCartManager.prototype.getTooltipOptions = function ($text, $css_classes) {
return {
text: $text,
classes: $css_classes
};
}
Index: branches/1.0.x/elements/side_boxes/compare.elm.tpl
===================================================================
--- branches/1.0.x/elements/side_boxes/compare.elm.tpl (revision 15042)
+++ branches/1.0.x/elements/side_boxes/compare.elm.tpl (revision 15043)
@@ -1,51 +1,68 @@
<inp2:m_if check="m_Get" name="ajax" equals_to="yes">
<inp2:m_NoDebug/>
</inp2:m_if>
<inp2:m_Include template="elements/content_boxes.elm" strip_nl="2"/>
<inp2:m_Include template="elements/product_elements.elm" strip_nl="2"/>
-<inp2:p_InitList list_name="compare_products" types="compare" parent_cat_id="any" per_page="3"/>
+<inp2:p_InitList list_name="compare_products" types="compare" parent_cat_id="any"/>
<div class="block no-border-bottom" id="compare-products-sidebox"<inp2:m_ifnot check="p_TotalRecords" list_name="compare_products"> style="display: none;"</inp2:m_ifnot>>
<h2>
<em>Comparing Products (<inp2:p_TotalRecords list_name="compare_products"/>)</em>
<span class="bullet"></span>
</h2>
<div class="good-item border-radius-bottom comparing-items">
<inp2:p_ListProducts list_name="compare_products" render_as="compare_product_element" no_table="1"/>
<p class="form buttons">
<input type="button" value="Compare" id="compare-products-btn" class="green-button" />&nbsp;&nbsp;&nbsp;
<input type="button" value="Clear" id="cancel-compare-btn" class="grey-button" />
</p>
</div>
</div>
<script type="text/javascript">
$(document).ready(
function () {
$('.addtocart', '#compare-products-sidebox').click(add_to_cart_handler);
$('#compare-products-btn').click(
function () {
redirect('<inp2:p_CompareLink template="products/compare" js_escape="1"/>');
}
);
$('#cancel-compare-btn').click(
function () {
compare_product(0, 'OnCancelCompare');
}
);
$('.button-delete', '#compare-products-sidebox').click(
function ($e) {
compare_product($(this).attr('product_id'), false);
return false;
}
);
+
+ <inp2:m_if check="m_Get" name="result">
+ var $compare_checkbox = $(".compare-checkbox[value='<inp2:m_Get name="p_id"/>']", '#products');
+
+ <inp2:m_if check="m_Get" name="result" equals_to="added">
+ create_tooltip($compare_checkbox, 'Added to Comparison', 'formSuccess');
+ </inp2:m_if>
+
+ <inp2:m_if check="m_Get" name="result" equals_to="removed">
+ create_tooltip($compare_checkbox, 'Removed from Comparison', 'formNeutral');
+ </inp2:m_if>
+
+ <inp2:m_if check="m_Get" name="result" equals_to="error">
+ create_tooltip($compare_checkbox, 'Up to <inp2:m_GetConfig name="MaxCompareProducts"/> products can be compared', 'formError');
+ $compare_checkbox.attr('checked', false);
+ </inp2:m_if>
+ </inp2:m_if>
}
);
</script>
\ No newline at end of file
Index: branches/1.0.x/elements/product_elements.elm.tpl
===================================================================
--- branches/1.0.x/elements/product_elements.elm.tpl (revision 15042)
+++ branches/1.0.x/elements/product_elements.elm.tpl (revision 15043)
@@ -1,76 +1,78 @@
<inp2:m_DefineElement name="product_list_element">
<li>
<div class="item">
<inp2:m_if check="Field" name="IsNew">
<div class="ribbon new"></div>
<inp2:m_elseif check="Field" name="IsPop" />
<div class="ribbon top"></div>
<inp2:m_elseif check="Field" name="Featured" db="1" />
<div class="ribbon sale"></div>
</inp2:m_if>
<div class="img">
<a href="<inp2:ProductLink template='__default__'/>"><inp2:Image render_as="image_element" Primary="1" Thumbnail="1" DefaultImage="img/product_no_picture.png" MaxWidth="69" MaxHeight="69"/></a>
</div>
<div class="descr">
<h3><a href="<inp2:ProductLink template='__default__'/>"><inp2:Field field="Name" html_escape="1"/></a></h3>
<p><inp2:Field field="Description" html_escape="1" cut_first="200"/></p>
<div class="optional">
<span class="stars">
<inp2:VotesIndicator small_style="small-star"/>
</span>
<span class="reviews">
<a href="<inp2:ProductLink template='__default__'/>">Reviews</a> (<a href="<inp2:ProductLink template='__default__'/>"><inp2:Field name="CachedReviewsQty"/></a>)&nbsp;&nbsp;&nbsp;
</span>
<span class="comp">
- <label><input type="checkbox" class="compare-checkbox" value="<inp2:Field name='ProductId'/>"<inp2:m_if check="InCompare"> checked</inp2:m_if>/><em>Compare</em></label>
+ <label class="compare-bubble">
+ <input type="checkbox" class="left compare-checkbox" value="<inp2:Field name='ProductId'/>"<inp2:m_if check="InCompare"> checked</inp2:m_if>/><em style="display:block" class="left">Compare</em>
+ </label>
</span>
</div>
</div>
<div class="price-block">
<p><s class="under"><inp2:Field name="MSRP" currency="selected" decimal_tag="span"/></s></p>
<p class="redprice"><em class="price"><inp2:Field name="Price" currency="selected" decimal_tag="span"/></em></p>
<p>
<a href="<inp2:AddToCartLink template='elements/ajax/cart_bubble' product_template='__default__'/>" class="addtocart" rel="nofollow">
<inp2:m_if check="Field" name="HasRequiredOptions" db="db">
<span>Click to See</span>
<inp2:m_else/>
<span>Add to Cart</span>
</inp2:m_if>
</a>
</p>
</div>
</div>
</li>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="sidebox_product_element">
<dl class="<inp2:m_if check='m_Param' name='is_last'>last</inp2:m_if>">
<dt><a href="<inp2:ProductLink template='__default__'/>"><inp2:Field field="Name" html_escape="1" cut_first="45"/></a></dt>
<dd>
<p class="img"><a href="<inp2:ProductLink template='__default__'/>"><inp2:Image render_as="image_element" Primary="1" Thumbnail="1" DefaultImage="img/product_no_picture.png" MaxWidth="136" MaxHeight="136"/></a></p>
<p class="price"><inp2:Field name="Price" currency="selected" decimal_tag="span"/></p>
<p>
<a href="<inp2:AddToCartLink template='elements/ajax/cart_bubble' product_template='__default__'/>" class="addtocart" rel="nofollow">
<inp2:m_if check="Field" name="HasRequiredOptions" db="db">
<span>Click to See</span>
<inp2:m_else/>
<span>Add to Cart</span>
</inp2:m_if>
</a>
</p>
</dd>
</dl>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="compare_product_element">
<dl>
<dt><a href="<inp2:ProductLink template='__default__'/>"><inp2:Field name="Name"/></a></dt>
<dd>
<p class="img">
<a href="<inp2:ProductLink template='__default__'/>"><inp2:Image render_as="image_element" Primary="1" Thumbnail="1" DefaultImage="img/product_no_picture.png" MaxWidth="136" MaxHeight="136"/></a>
</p>
<p class="button-delete" product_id="<inp2:Field name='ProductId'/>"><a href="#"><img src="<inp2:m_TemplatesBase/>img/icon-delete.png" width="13" height="13" alt="" /></a></p>
</dd>
</dl>
</inp2:m_DefineElement>
\ No newline at end of file
Index: branches/1.0.x/elements/content_boxes/products.elm.tpl
===================================================================
--- branches/1.0.x/elements/content_boxes/products.elm.tpl (revision 15042)
+++ branches/1.0.x/elements/content_boxes/products.elm.tpl (revision 15043)
@@ -1,56 +1,56 @@
<inp2:m_DefaultParam prefix="" list_name="" types="" parent_cat_id="" layout="list"/>
<inp2:m_if check="m_Get" name="ajax" equals_to="yes">
<inp2:m_NoDebug/>
<inp2:m_Get name="list_prefix" result_to_var="prefix"/>
<inp2:m_Get name="list_name" result_to_var="list_name"/>
<inp2:m_Get name="types" result_to_var="types"/>
<inp2:m_Get name="parent_cat_id" result_to_var="parent_cat_id"/>
<inp2:m_Get name="layout" result_to_var="layout"/>
</inp2:m_if>
<inp2:$prefix_InitList list_name="$list_name" types="$types" parent_cat_id="$parent_cat_id" main_list="1"/>
<inp2:m_Include template="elements/content_boxes.elm" strip_nl="2"/>
<inp2:m_Include template="elements/product_elements.elm" strip_nl="2"/>
<inp2:m_if check="{$prefix}_TotalRecords" list_name="$list_name">
<inp2:m_Include template="elements/sorting.elm" list_name="$list_name" prefix="$prefix" layout="$layout" ajax="1"/>
<div class="items <inp2:m_if check='m_Param' name='layout' equals_to='list'>border-radius<inp2:m_else/>items-alt</inp2:m_if>">
<ul class="display<inp2:m_if check='m_Param' name='layout' equals_to='grid'> thumb_view</inp2:m_if>">
<inp2:$prefix_ListProducts list_name="$list_name" render_as="product_list_element"/>
</ul>
<div class="clear"></div>
<inp2:m_Include template="elements/pagination.elm" list_name="$list_name" prefix="$prefix" ajax="1"/>
</div>
<script type="text/javascript">
$(document).ready(
function () {
- $('.compare-checkbox').click(
+ $('.compare-checkbox', '#products').click(
function ($e) {
var $me = $(this);
compare_product($me.val(), $me.is(':checked'));
}
);
<inp2:m_if check="m_Get" name="ajax" equals_to="yes">
$('.addtocart', '#products').click(add_to_cart_handler);
</inp2:m_if>
}
);
</script>
<inp2:m_else/>
No Products
</inp2:m_if>
<inp2:m_if check="m_GetConfig" name="UpdateCountersOnFilterChange">
<inp2:m_include template="elements/filters.elm"/>
<script type="text/javascript">
<inp2:item-filter_PrintList render_as="filter_counters_element" list_name="$list_name" prefix="$prefix" is_list="1"/>
</script>
</inp2:m_if>
\ No newline at end of file
Index: branches/1.0.x/img/validate/con-success-arrow-bottom.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes on: branches/1.0.x/img/validate/con-success-arrow-bottom.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: branches/1.0.x/img/validate/con-error-arrow-bottom.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes on: branches/1.0.x/img/validate/con-error-arrow-bottom.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: branches/1.0.x/img/validate/con-neutral-arrow-bottom.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes on: branches/1.0.x/img/validate/con-neutral-arrow-bottom.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: branches/1.0.x/img/validate/con-neutral.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Property changes on: branches/1.0.x/img/validate/con-neutral.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property

Event Timeline