Page Menu
Home
In-Portal Phabricator
Search
Configure Global Search
Log In
Files
F848156
modern-store
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sun, Apr 20, 2:03 AM
Size
104 KB
Mime Type
text/x-diff
Expires
Tue, Apr 22, 2:03 AM (19 h, 30 m)
Engine
blob
Format
Raw Data
Handle
602905
Attached To
rTMST Themes.Modern-Store
modern-store
View Options
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" />
<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>)
</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
Log In to Comment