Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Recommended Posts

  • 1 month later...

Здравствуйте.

Скачал и установил Ваш модуль:

Кнопка не появилась.

Тема не стандартная - coloring

Помогите в установке. Оплачу работу.

Пишу Вам в личку - Вы не отвечаете

Надіслати
Поділитися на інших сайтах


  • 2 weeks later...

А подскажите, плиз, как правильно и качественно перевести модуль на украинский?

А то при переключении на украинский на сайте, пропадает название кнопки

Надіслати
Поділитися на інших сайтах


  • 1 month later...

Установил модуль. Кнопка появилась. Но в сплывающем окне не показывает картинку, расширение выставляет 0х0 и не отображает название валюты.

Кто-нибудь сталкивался с такими проблемами?

0226a13f1b758d.jpg

Надіслати
Поділитися на інших сайтах


  • 1 month later...

Подскажите как вывести кнопку в шаблоне Mediacenter (OcStore 2.1.0.2)?
Код файла /catalog/view/theme/mediacenter/template/product/product.tpl

Спойлер

<?php echo $header; 
$theme_options = $this->registry->get('theme_options');
$config = $this->registry->get('config'); 
$product_detail = $theme_options->getDataProduct( $product_id );
$page_direction = $theme_options->get( 'page_direction' );

$text_sale = 'Sale';
if($theme_options->get( 'sale_text', $config->get( 'config_language_id' ) ) != '') {
    $text_sale = $theme_options->get( 'sale_text', $config->get( 'config_language_id' ) );
} 
$text_bestseller = 'Bestseller';
if($theme_options->get( 'bestseller_text', $config->get( 'config_language_id' ) ) != '') {
    $text_bestseller = $theme_options->get( 'bestseller_text', $config->get( 'config_language_id' ) );
} 
$text_new = 'New';
if($theme_options->get( 'new_text', $config->get( 'config_language_id' ) ) != '') {
    $text_new = $theme_options->get( 'new_text', $config->get( 'config_language_id' ) );
} 

include('catalog/view/theme/'.$config->get('config_template').'/template/new_elements/wrapper_top.tpl'); ?>
<?php //var_dump(get_defined_vars()); ?>
<div itemscope itemtype="http://data-vocabulary.org/Product">
  <span itemprop="name" class="hidden"><?php echo $heading_title; ?></span>
  <div class="product-info">
  	<div class="row">
  	     <?php $product_custom_block = $modules->getModules('product_custom_block'); ?>
  		<div class="col-sm-<?php if($theme_options->get( 'custom_block', 'product_page', $config->get( 'config_language_id' ), 'status' ) == 1 || count($product_custom_block)) { echo 9; } else { echo 12; } ?>">
  			<div class="row" id="quickview_product">
			    <?php if($theme_options->get( 'product_image_zoom' ) != 2) { ?>
			    <script>
                    <?php $zoomInstance = uniqid(); ?>
                    function initZoom<?php echo $zoomInstance ?>(){
                        $('.zoomContainer').remove();
                        $('#image').removeData('elevateZoom');
                        $('#image').removeData('zoomImage');
                        <?php if($theme_options->get( 'product_image_zoom' ) == 1) { ?>
                                $('#image').elevateZoom({
                                    zoomType: "inner",
                                    cursor: "pointer",
                                    zoomWindowFadeIn: 500,
                                    zoomWindowFadeOut: 750,
                                });
                            <?php } else { ?>
                                

                                $('#image').elevateZoom({
                                    tint: true,
                                    tintOpacity: 0.5,
                                    zoomTintFadeIn: 500,
                                    zoomTintFadeOut: 500,
                                    zoomWindowFadeIn: 500,
                                    zoomWindowFadeOut: 500,
                                    zoomWindowOffetx: 20,
                                    zoomWindowOffety: -1,
                                    easing : true,
                                });

                                setTimeout(function(){$('.rtl .zoomContainer').addClass('zoom-left')}, 500);
                            <?php } ?>
                    }
			    	$(document).ready(function(){
			    	     if($(window).width() > 992) {
     			    		
     			    		initZoom<?php echo $zoomInstance ?>();
     			    		var z_index = 0;
     			    		
     			    		$(document).on('click', '.open-popup-image', function () {
     			    		  $('.popup-gallery').magnificPopup('open', z_index);
     			    		  return false;
     			    		});
			    		
     			    		$('.thumbnails a, .thumbnails-carousel a').click(function() {
     			    			var smallImage = $(this).attr('data-image');
     			    			var largeImage = $(this).attr('data-zoom-image');
     			    			var ez =   $('#image').data('elevateZoom');	
     			    			$('#ex1').attr('href', largeImage);  
     			    			ez.swaptheimage(smallImage, largeImage); 
                                $('#image').attr('data-zoom-image', largeImage);	
     			    			z_index = $(this).index('.thumbnails a, .thumbnails-carousel a');
                                initZoom<?php echo $zoomInstance ?>();
     			    			return false;
     			    		});
			    		} else {
			    			$(document).on('click', '.open-popup-image', function () {
			    			  $('.popup-gallery').magnificPopup('open', 0);
			    			  return false;
			    			});
			    		}
			    	});
			    </script>
			    <?php } ?>
			    <?php $image_grid = 6; $product_center_grid = 6; 
			    if ($theme_options->get( 'product_image_size' ) == 1) {
			    	$image_grid = 5; $product_center_grid = 7;
			    }
			    
			    if ($theme_options->get( 'product_image_size' ) == 3) {
			    	$image_grid = 8; $product_center_grid = 4;
			    }
			    ?>
			    <div class="col-sm-<?php echo $image_grid; ?> popup-gallery">
			      <?php 
			      $product_image_top = $modules->getModules('product_image_top');
			      if( count($product_image_top) ) { 
			      	foreach ($product_image_top as $module) {
			      		echo $module;
			      	}
			      } ?>
			         
			      <div class="row">
			      	  <?php if (($images || $theme_options->get( 'product_image_zoom' ) != 2) && $theme_options->get( 'position_image_additional' ) == 2) { ?>
			      	  <div class="col-sm-2">
						<div class="thumbnails thumbnails-left clearfix">
							<ul>
							  <?php if($theme_options->get( 'product_image_zoom' ) != 2 && $thumb) { ?>
						      <li><p><a href="<?php echo $popup; ?>" class="popup-image" data-image="<?php echo $thumb; ?>" data-zoom-image="<?php echo $popup; ?>"><img src="<?php echo $theme_options->productImageThumb($product_id, $config->get('config_image_additional_width'), $config->get('config_image_additional_height')); ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></p></li>
							  <?php } ?>
						      <?php foreach ($images as $image) { ?>
						      <li><p><a href="<?php echo $image['popup']; ?>" class="popup-image" data-image="<?php echo $image['popup']; ?>" data-zoom-image="<?php echo $image['popup']; ?>"><img src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></p></li>
						      <?php } ?>
						  </ul>
						</div>
			      	  </div>
			      	  <?php } ?>
			      	  
				      <div class="col-sm-<?php if($theme_options->get( 'position_image_additional' ) == 2) { echo 10; } else { echo 12; } ?>">
				      	<?php if ($thumb) { ?>
					      <div class="product-image <?php if($theme_options->get( 'product_image_zoom' ) != 2) { if($theme_options->get( 'product_image_zoom' ) == 1) { echo 'inner-cloud-zoom'; } else { echo 'cloud-zoom'; } } ?>">
					      	 <?php if($special && $theme_options->get( 'display_text_sale' ) != '0') { ?>
					      	 	<?php if($theme_options->get( 'type_sale' ) == '0') { ?>
                                <div class="ribbon red sale"><span><?php echo $text_sale; ?></span></div>
					      	 	<?php } ?>
					      	 <?php } ?>
                                
                            <?php if($product_detail['is_bestseller'] && $theme_options->get( 'display_text_bestseller' ) != '0'):?>
                                <div class="ribbon green bestseller"><span><?php echo $text_bestseller; ?></span></div>
                            <?php endif; ?>
                            <?php if($product_detail['is_latest'] && $theme_options->get( 'display_text_latest' ) != '0'):?>
                                <div class="ribbon blue latest"><span><?php echo $text_new; ?></span></div>
                            <?php endif; ?>
					      	 
					     	 <a href="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" id="ex1" <?php if($theme_options->get( 'product_image_zoom' ) == 2) { ?>class="popup-image"<?php } else { echo 'class="open-popup-image"'; } ?>><img src="<?php echo $popup; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" id="image" itemprop="image" data-zoom-image="<?php echo $popup; ?>" /></a>
					      </div>
					  	 <?php } else { ?>
					  	 <div class="product-image">
					  	 	 <img src="image/no_image.jpg" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" id="image" itemprop="image" />
					  	 </div>
					  	 <?php } ?>
				      </div>
				      
				      <?php if (($images || $theme_options->get( 'product_image_zoom' ) != 2) && $theme_options->get( 'position_image_additional' ) != 2) { ?>
				      <div class="col-sm-12">
				           <div class="overflow-thumbnails-carousel">
     					      <div class="thumbnails-carousel owl-carousel">
     					      	<?php if($theme_options->get( 'product_image_zoom' ) != 2 && $thumb) { ?>
     					      	     <div class="item"><a href="<?php echo $popup; ?>" class="popup-image" data-image="<?php echo $popup; ?>" data-zoom-image="<?php echo $popup; ?>"><img src="<?php echo $theme_options->productImageThumb($product_id, $config->get('config_image_additional_width'), $config->get('config_image_additional_height')); ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></div>
     					      	<?php } ?>
     						     <?php foreach ($images as $image) { ?>
     						         <div class="item"><a href="<?php echo $image['popup']; ?>" class="popup-image" data-image="<?php echo $image['popup']; ?>" data-zoom-image="<?php echo $image['popup']; ?>"><img src="<?php echo $image['thumb']; ?>" title="<?php echo $heading_title; ?>" alt="<?php echo $heading_title; ?>" /></a></div>
     						     <?php } ?>
     					      </div>
					      </div>
					      
					      <script type="text/javascript">
					           $(document).ready(function() {
					             $(".thumbnails-carousel").owlCarousel({
					                 autoPlay: 6000, //Set AutoPlay to 3 seconds
					                 navigation: true,
					                 navigationText: ['', ''],
					                 itemsCustom : [
					                   [0, 4],
					                   [450, 6],
					                   [550, 6],
					                   [768, 5],
					                   [1200, 6]
					                 ],
                                    <?php if($page_direction[$config->get( 'config_language_id' )] == 'RTL'): ?>
                                    direction: 'rtl'
                                    <?php endif; ?>
					             });
					           });
					      </script>
				      </div>
				      <?php } ?>
			      </div>
			      
			      <?php 
			      $product_image_bottom = $modules->getModules('product_image_bottom');
			      if( count($product_image_bottom) ) { 
			      	foreach ($product_image_bottom as $module) {
			      		echo $module;
			      	}
			      } ?>
			    </div>

			    <div class="col-sm-<?php echo $product_center_grid; ?> product-center clearfix">
			     <div itemprop="offerDetails" itemscope itemtype="http://data-vocabulary.org/Offer">
			      <?php 
                  
			      $product_options_top = $modules->getModules('product_options_top');
			      if( count($product_options_top) ) { 
			      	foreach ($product_options_top as $module) {
			      		echo $module;
			      	}
			      } ?>
                    <?php if ($review_status) { ?>
                    <div class="review">
                      <?php if($rating > 0) { ?>
                      <span itemprop="review" class="hidden" itemscope itemtype="http://data-vocabulary.org/Review-aggregate">
                          <span itemprop="itemreviewed"><?php echo $heading_title; ?></span>
                          <span itemprop="rating"><?php echo $rating; ?></span>
                          <span itemprop="votes"><?php preg_match_all('/\(([0-9]+)\)/', $tab_review, $wyniki);
                          if(isset($wyniki[1][0])) { echo $wyniki[1][0]; } else { echo 0; } ?></span>
                      </span>
                      <?php } ?>
                        <div class="rating">
                          <i class="fa fa-star<?php if($rating >= 1) { echo ' active'; } ?>"></i><i class="fa fa-star<?php if($rating >= 2) { echo ' active'; } ?>"></i><i class="fa fa-star<?php if($rating >= 3) { echo ' active'; } ?>"></i><i class="fa fa-star<?php if($rating >= 4) { echo ' active'; } ?>"></i><i class="fa fa-star<?php if($rating >= 5) { echo ' active'; } ?>"></i>
                        </div>
                    </div>
                     
                    <?php } ?>
                     <div class="availability">
                         <?php echo $text_stock; ?> <span class="<?php echo ($product_detail['is_available'] ? 'available' : 'no-available'); ?>"><?php echo $stock; ?></span>
                     </div>
                     <div class="product-name">
                         <?php echo $heading_title ?>
                        <div class="product-brand">
                            <?php if ($manufacturer) { ?>
                            <a href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a>
                            <?php } ?>
                         </div>
                     </div>

                     
			        <?php if($theme_options->get( 'product_social_share' ) != '0') { ?>
			        <div class="share">
			        	<!-- AddThis Button BEGIN -->
			        	<script type="text/javascript">(function() {
  if (window.pluso)if (typeof window.pluso.start == "function") return;
  if (window.ifpluso==undefined) { window.ifpluso = 1;
    var d = document, s = d.createElement('script'), g = 'getElementsByTagName';
    s.type = 'text/javascript'; s.charset='UTF-8'; s.async = true;
    s.src = ('https:' == window.location.protocol ? 'https' : 'http')  + '://share.pluso.ru/pluso-like.js';
    var h=d[g]('body')[0];
    h.appendChild(s);
  }})();</script>
<div class="pluso" data-background="transparent" data-options="small,square,line,horizontal,nocounter,theme=08" data-services="vkontakte,odnoklassniki,yandex,google,moimir,facebook,twitter"></div> 
			        	<!-- AddThis Button END --> 
			        </div>
			        <?php } ?>
                     			        
			        <div class="links">
			        	<a onclick="wishlist.add('<?php echo $product_id; ?>');"><i class="fa fa-heart"></i> <?php echo $button_wishlist; ?></a>
			        	<a onclick="compare.add('<?php echo $product_id; ?>');"><i class="fa fa-exchange"></i> <?php echo $button_compare; ?></a>
			        </div>
                     
			      <div class="description">

			        <span class="label"><?php echo $text_model; ?></span> <span class="value"><?php echo $model; ?></span><br />
			        <?php if ($reward) { ?>
			        <span class="label"><?php echo $text_reward; ?></span> <span class="value"><?php echo $reward; ?></span><br />
			        <?php } ?>
			        
                </div>
			      <?php if ($price) { ?>
			      <div class="price">
                    <?php if($product_detail['special'] && $theme_options->get( 'display_text_sale' ) != '0') {?>
                    <?php if($theme_options->get( 'type_sale' ) == '1') { ?>
                    <?php 
                    $roznica_ceny = $product_detail['price']-$product_detail['special'];
                    $procent = ($roznica_ceny*100)/$product_detail['price']; ?>
                    <div class="label-discount green sale"><span>-<?php echo round($procent); ?>%</span></div>
                    <?php } ?>
                    <?php } ?>
                      
			        <?php if (!$special) { ?>
			        <span class="price-new"><span itemprop="price" id="price-old"><?php echo $price; ?></span></span>
			        <?php } else { ?>
			        <span class="price-new"><span itemprop="price" id="price-special"><?php echo $special; ?></span></span> <span class="price-old" id="price-old"><?php echo $price; ?></span>
			        <?php } ?>
			        <br />
			        <?php if ($tax) { ?>
			        <span class="price-tax"><?php echo $text_tax; ?> <span id="price-tax"><?php echo $tax; ?></span></span><br />
			        <?php } ?>
			        <?php if ($points) { ?>
			        <span class="reward"><small><?php echo $text_points; ?> <?php echo $points; ?></small></span><br />
			        <?php } ?>
			        <?php if ($discounts) { ?>
			        <br />
			        <div class="discount">
			          <?php foreach ($discounts as $discount) { ?>
			          <?php echo $discount['quantity']; ?><?php echo $text_discount; ?><?php echo $discount['price']; ?><br />
			          <?php } ?>
			        </div>
			        <?php } ?>
			      </div>
			      <?php } ?>
			     </div>
			     
			     <div id="product">
			      <?php 
			      $product_options_center = $modules->getModules('product_options_center');
			      if( count($product_options_center) ) { 
			      	foreach ($product_options_center as $module) {
			      		echo $module;
			      	}
			      } ?>
			      <?php if ($options) { ?>
			      <div class="options">
			        <h2><?php echo $text_option; ?></h2>
			        <?php foreach ($options as $option) { ?>
			        <?php if ($option['type'] == 'select') { ?>
			        <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			          <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label>
			          <select name="option[<?php echo $option['product_option_id']; ?>]" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control">
			            <option value=""><?php echo $text_select; ?></option>
			            <?php foreach ($option['product_option_value'] as $option_value) { ?>
			            <option value="<?php echo $option_value['product_option_value_id']; ?>"><?php echo $option_value['name']; ?>
			            <?php if ($option_value['price']) { ?>
			            (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
			            <?php } ?>
			            </option>
			            <?php } ?>
			          </select>
			        </div>
			        <?php } ?>
			        <?php if ($option['type'] == 'radio') { ?>
			        <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			          <label class="control-label"><?php echo $option['name']; ?></label>
			          <div id="input-option<?php echo $option['product_option_id']; ?>">
			            <?php foreach ($option['product_option_value'] as $option_value) { ?>
			            <div class="radio <?php if($theme_options->get( 'product_page_radio_style' ) == 1) { echo 'radio-type-button2'; } ?>">
			              <label>
			                <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" />
			                <span><?php echo $option_value['name']; ?>
			                <?php if($theme_options->get( 'product_page_radio_style' ) != 1) { ?><?php if ($option_value['price']) { ?>
			                (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
			                <?php } ?><?php } ?></span>
			              </label>
			            </div>
			            <?php } ?>
			            
			            <?php if($theme_options->get( 'product_page_radio_style' ) == 1) { ?>
			            <script type="text/javascript">
			                 $(document).ready(function(){
                                 $('#input-option<?php echo $option['product_option_id']; ?> input').iCheck('destroy');
			                      $('#input-option<?php echo $option['product_option_id']; ?>').on('click', 'span', function () {
			                           $('#input-option<?php echo $option['product_option_id']; ?> span').removeClass("active");
                                       $(this).addClass("active");
			                      });
			                 });
			            </script>
			            <?php } ?>
			          </div>
			        </div>
			        <?php } ?>
			        <?php if ($option['type'] == 'checkbox') { ?>
			        <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			          <label class="control-label"><?php echo $option['name']; ?></label>
			          <div id="input-option<?php echo $option['product_option_id']; ?>">
			            <?php foreach ($option['product_option_value'] as $option_value) { ?>
			            <div class="checkbox <?php if($theme_options->get( 'product_page_checkbox_style' ) == 1) { echo 'radio-type-button2'; } ?>">
			              <label>
			                <input type="checkbox" name="option[<?php echo $option['product_option_id']; ?>][]" value="<?php echo $option_value['product_option_value_id']; ?>" />
			                <span><?php echo $option_value['name']; ?>
			                <?php if($theme_options->get( 'product_page_checkbox_style' ) != 1) { ?><?php if ($option_value['price']) { ?>
			                (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
			                <?php } ?><?php } ?></span>
			              </label>
			            </div>
			            <?php } ?>
			            
			            <?php if($theme_options->get( 'product_page_checkbox_style' ) == 1) { ?>
			            <script type="text/javascript">
			                 $(document).ready(function(){
                                 $('#input-option<?php echo $option['product_option_id']; ?> input').iCheck('destroy');
			                      $('#input-option<?php echo $option['product_option_id']; ?>').on('click', 'span', function () {
			                           if($(this).hasClass("active") == true) {
			                                $(this).removeClass("active");
			                           } else {
			                                $(this).addClass("active");
			                           }
			                      });
			                 });
			            </script>
			            <?php } ?>
			          </div>
			        </div>
			        <?php } ?>
			        <?php if ($option['type'] == 'image') { ?>
			        <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			          <label class="control-label"><?php echo $option['name']; ?></label>
			          <div id="input-option<?php echo $option['product_option_id']; ?>">
			            <?php foreach ($option['product_option_value'] as $option_value) { ?>
			            <div class="radio <?php if($theme_options->get( 'product_page_radio_style' ) == 1) { echo 'radio-type-button'; } ?>">
			              <label>
			                <input type="radio" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option_value['product_option_value_id']; ?>" />
			                <span <?php if($theme_options->get( 'product_page_radio_style' ) == 1) { ?>data-toggle="tooltip" data-placement="top" title="<?php echo $option_value['name']; ?> <?php if ($option_value['price']) { ?>(<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)<?php } ?>"<?php } ?>><img src="<?php echo $option_value['image']; ?>" alt="<?php echo $option_value['name'] . ($option_value['price'] ? ' ' . $option_value['price_prefix'] . $option_value['price'] : ''); ?>" <?php if($theme_options->get( 'product_page_radio_style' ) == 1) { ?>width="<?php if($theme_options->get( 'product_page_radio_image_width' ) > 0) { echo $theme_options->get( 'product_page_radio_image_width' ); } else { echo 25; } ?>px" height="<?php if($theme_options->get( 'product_page_radio_image_height' ) > 0) { echo $theme_options->get( 'product_page_radio_image_height' ); } else { echo 25; } ?>px"<?php } ?> /> <?php if($theme_options->get( 'product_page_radio_style' ) != 1) { ?><?php echo $option_value['name']; ?>
			                <?php if ($option_value['price']) { ?>
			                (<?php echo $option_value['price_prefix']; ?><?php echo $option_value['price']; ?>)
			                <?php } ?><?php } ?></span>
			              </label>
			            </div>
			            <?php } ?>
			            <?php if($theme_options->get( 'product_page_radio_style' ) == 1) { ?>
			            <script type="text/javascript">
			                 $(document).ready(function(){
                                 $('#input-option<?php echo $option['product_option_id']; ?> input').iCheck('destroy');
			                      $('#input-option<?php echo $option['product_option_id']; ?>').on('click', 'span', function () {
			                           $('#input-option<?php echo $option['product_option_id']; ?> span').removeClass("active");
			                           $(this).addClass("active");
			                      });
			                 });
			            </script>
			            <?php } ?>
			          </div>
			        </div>
			        <?php } ?>
			        <?php if ($option['type'] == 'text') { ?>
			        <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			          <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label>
			          <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" />
			        </div>
			        <?php } ?>
			        <?php if ($option['type'] == 'textarea') { ?>
			        <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			          <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label>
			          <textarea name="option[<?php echo $option['product_option_id']; ?>]" rows="5" placeholder="<?php echo $option['name']; ?>" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control"><?php echo $option['value']; ?></textarea>
			        </div>
			        <?php } ?>
			        <?php if ($option['type'] == 'file') { ?>
			        <div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			          <label class="control-label"><?php echo $option['name']; ?></label>
			          <button type="button" id="button-upload<?php echo $option['product_option_id']; ?>" class="btn btn-default btn-block" style="margin-top: 7px"><i class="fa fa-upload"></i> <?php echo $button_upload; ?></button>
			          <input type="hidden" name="option[<?php echo $option['product_option_id']; ?>]" value="" id="input-option<?php echo $option['product_option_id']; ?>" />
			        </div>
			        <?php } ?>
			       	<?php if ($option['type'] == 'date') { ?>
			       	<div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			       	  <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label>
			       	  <div class="input-group date">
			       	    <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" />
			       	    <span class="input-group-btn">
			       	    <button class="btn btn-default" type="button"><i class="fa fa-calendar"></i></button>
			       	    </span></div>
			       	</div>
			       	<?php } ?>
			       	<?php if ($option['type'] == 'datetime') { ?>
			       	<div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			       	  <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label>
			       	  <div class="input-group datetime">
			       	    <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="YYYY-MM-DD HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" />
			       	    <span class="input-group-btn">
			       	    <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button>
			       	    </span></div>
			       	</div>
			       	<?php } ?>
			       	<?php if ($option['type'] == 'time') { ?>
			       	<div class="form-group<?php echo ($option['required'] ? ' required' : ''); ?>">
			       	  <label class="control-label" for="input-option<?php echo $option['product_option_id']; ?>"><?php echo $option['name']; ?></label>
			       	  <div class="input-group time">
			       	    <input type="text" name="option[<?php echo $option['product_option_id']; ?>]" value="<?php echo $option['value']; ?>" data-date-format="HH:mm" id="input-option<?php echo $option['product_option_id']; ?>" class="form-control" />
			       	    <span class="input-group-btn">
			       	    <button type="button" class="btn btn-default"><i class="fa fa-calendar"></i></button>
			       	    </span></div>
			       	</div>
			       	<?php } ?>
			        <?php } ?>
			      </div>
			      <?php } ?>
			      
			      <?php if ($recurrings) { ?>
			      <div class="options">
			          <h2><?php echo $text_payment_recurring ?></h2>
			          <div class="form-group required">
			            <select name="recurring_id" class="form-control">
			              <option value=""><?php echo $text_select; ?></option>
			              <?php foreach ($recurrings as $recurring) { ?>
			              <option value="<?php echo $recurring['recurring_id'] ?>"><?php echo $recurring['name'] ?></option>
			              <?php } ?>
			            </select>
			            <div class="help-block" id="recurring-description"></div>
			          </div>
			      </div>
			      <?php } ?>
			      
			      <div class="cart">
			        <div class="add-to-cart clearfix">
			          <?php 
			          $product_enquiry = $modules->getModules('product_enquiry');
			          if( count($product_enquiry) ) { 
			          	foreach ($product_enquiry as $module) {
			          		echo $module;
			          	}
			          } else { ?>
     			          <p><?php echo $entry_qty; ?></p>
     			          <div class="quantity">
     				          <input type="text" name="quantity" id="quantity_wanted" size="2" value="<?php echo $minimum; ?>" />
     				          <a href="#" id="q_up"><i class="fa fa-plus"></i></a>
     				          <a href="#" id="q_down"><i class="fa fa-minus"></i></a>
     			          </div>
     			          <input type="hidden" name="product_id" size="2" value="<?php echo $product_id; ?>" />
     			          <input type="button" value="<?php echo $button_cart; ?>" id="button-cart" rel="<?php echo $product_id; ?>" data-loading-text="<?php echo $text_loading; ?>" class="button" />
			          <?php } ?>
			        </div>
                    <?php 
                    $product_questions = $modules->getModules('product_question');
                    if( count($product_questions) ) { 
                        foreach ($product_questions as $module) {
                            echo $module;
                        }
                    }
                    ?>

			         
			        <?php if ($minimum > 1) { ?>
			        <div class="minimum"><?php echo $text_minimum; ?></div>
			        <?php } ?>
			      </div>
			     </div><!-- End #product -->
			      
			      <?php 
			      $product_options_bottom = $modules->getModules('product_options_bottom');
			      if( count($product_options_bottom) ) { 
			      	foreach ($product_options_bottom as $module) {
			      		echo $module;
			      	}
			      } ?>
		    	</div>
		    </div>
    	</div>
    	
    	<?php if($theme_options->get( 'custom_block', 'product_page', $config->get( 'config_language_id' ), 'status' ) == 1 || count($product_custom_block)) { ?>
    	<div class="col-sm-3">
    	     <?php if($theme_options->get( 'custom_block', 'product_page', $config->get( 'config_language_id' ), 'status' ) == 1) { ?>
    		<div class="product-block">
    			<?php if($theme_options->get( 'custom_block', 'product_page', $config->get( 'config_language_id' ), 'heading' ) != '') { ?>
    			<h4 class="title-block"><?php echo $theme_options->get( 'custom_block', 'product_page', $config->get( 'config_language_id' ), 'heading' ); ?></h4>
    			<div class="strip-line"></div>
    			<?php } ?>
    			<div class="block-content">
    				<?php echo html_entity_decode($theme_options->get( 'custom_block', 'product_page', $config->get( 'config_language_id' ), 'text' )); ?>
    			</div>
    		</div>
    		<?php } ?>
    		
    		<?php foreach ($product_custom_block as $module) { echo $module; } ?>
    	</div>
    	<?php } ?>
    </div>
  </div>
  
  <?php 
  $product_over_tabs = $modules->getModules('product_over_tabs');
  if( count($product_over_tabs) ) { 
  	foreach ($product_over_tabs as $module) {
  		echo $module;
  	}
  } ?>
  
  <?php 
  	  $language_id = $config->get( 'config_language_id' );
	  $tabs = array();
	  
	  $tabs[] = array(
	  	'heading' => $tab_description,
	  	'content' => 'description',
	  	'sort' => 1
	  );
	  
	  if ($attribute_groups) { 
		  $tabs[] = array(
		  	'heading' => $tab_attribute,
		  	'content' => 'attribute',
		  	'sort' => 3
		  );
	  }
	  
	  if ($review_status) { 
	  	  $tabs[] = array(
	  	  	'heading' => $tab_review,
	  	  	'content' => 'review',
	  	  	'sort' => 5
	  	  );
	  }
	  	  	  
	  if(is_array($config->get('product_tabs'))) {
		  foreach($config->get('product_tabs') as $tab) {
		  	if($tab['status'] == 1 || $tab['product_id'] == $product_id) {
		  		foreach($tab['tabs'] as $zakladka) {
		  			if($zakladka['status'] == 1) {
		  				$heading = false; $content = false;
		  				if(isset($zakladka[$language_id])) {
		  					$heading = $zakladka[$language_id]['name'];
		  					$content = html_entity_decode($zakladka[$language_id]['html']);
		  				}
		  				$tabs[] = array(
		  					'heading' => $heading,
		  					'content' => $content,
		  					'sort' => $zakladka['sort_order']
		  				);
		  			}
		  		}
		  	}
		  }
	  }
	  
	  usort($tabs, "cmp_by_optionNumber");
      
      $meta_rows = '';
      ob_start();
      ?>
        <div class="meta-row">
        <?php if(!empty($product_detail['categories'])): ?>
        <div class="inline">
            <span class="label"><?php echo $theme_options->get( 'categories_text', $config->get( 'config_language_id' ) ) != '' ? $theme_options->get( 'categories_text', $config->get( 'config_language_id' ) ) : 'Categories';  ?>:</span>
            <?php $i = 0; foreach($product_detail['categories'] as $cat):?>
            <span><a href="<?php echo $cat['href']; ?> "><?php echo $cat['name'] ?></a><?php echo ($i < count($product_detail['categories']) -1 ? ', ' : '')?></span>
            <?php $i++; endforeach; ?>
        </div>
        <?php endif; ?>
        <?php if ($tags) { ?>
        <div class="inline">
            <span class="label"><?php echo $text_tags; ?></span>
            <?php for ($i = 0; $i < count($tags); $i++) { ?>
            <?php if ($i < (count($tags) - 1)) { ?>
            <span><a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a><span>,
            <?php } else { ?>
            <span><a href="<?php echo $tags[$i]['href']; ?>"><?php echo $tags[$i]['tag']; ?></a></span>
            <?php } ?>
            <?php } ?>
        </div>
        <?php } ?>
      </div>
  
      <?php
      $meta_rows = ob_get_clean();
      
      
  ?>
  <div id="tabs" class="htabs">
  	<?php $i = 0; foreach($tabs as $tab) { $i++;
  		$id = 'tab_'.$i;
  		if($tab['content'] == 'description') { $id = 'tab-description'; }
  		if($tab['content'] == 'attribute') { $id = 'tab-attribute'; }
  		if($tab['content'] == 'review') { $id = 'tab-review'; }
  		echo '<a href="#'.$id.'">'.$tab['heading'].'</a>';
  	} ?>
  </div>
  <?php $i = 0; foreach($tabs as $tab) { $i++;
  	$id = 'tab_'.$i;
  	if($tab['content'] != 'description' && $tab['content'] != 'attribute' && $tab['content'] != 'review') {
  		echo '<div id="'.$id.'" class="tab-content">'.$tab['content'].'</div>';
  	}
  } ?>
  <div id="tab-description" class="tab-content" itemprop="description">
      <?php echo $description; ?>
      <?php echo $meta_rows ?>
  </div>
  <?php if ($attribute_groups) { ?>
  <div id="tab-attribute" class="tab-content">
    <table class="attribute" cellspacing="0">
      <?php foreach ($attribute_groups as $attribute_group) { ?>
      <thead>
        <tr>
          <td colspan="2"><?php echo $attribute_group['name']; ?></td>
        </tr>
      </thead>
      <tbody>
        <?php foreach ($attribute_group['attribute'] as $attribute) { ?>
        <tr>
          <td><?php echo $attribute['name']; ?></td>
          <td><?php echo $attribute['text']; ?></td>
        </tr>
        <?php } ?>
      </tbody>
      <?php } ?>
    </table>
      
      <?php echo $meta_rows ?>
  </div>
  <?php } ?>
  <?php if ($review_status) { ?>
  <div id="tab-review" class="tab-content">
	<form class="form-horizontal" id="form-review">
	  <div id="review"></div>
	  <h2 id="review-title"><?php echo $text_write; ?></h2>
	  <?php if ($review_guest) { ?>
	  <div class="form-group required">
	    <div class="col-xs-12 col-sm-8">
	      <label class="control-label" for="input-name"><?php echo $entry_name; ?></label>
	      <input type="text" name="name" value="" id="input-name" class="form-control" />
	    </div>
	  </div>
      <div class="form-group required">
	    <div class="col-xs-12 col-sm-8">
	      <label class="control-label"><?php echo $entry_rating; ?></label>
          
         <div class="rating set-rating">
            <i class="fa fa-star" data-value="1"></i>
            <i class="fa fa-star" data-value="2"></i>
            <i class="fa fa-star" data-value="3"></i>
            <i class="fa fa-star" data-value="4"></i>
            <i class="fa fa-star" data-value="5"></i>
        </div>
        <script type="text/javascript">
            $(document).ready(function() {
              $('.set-rating i').hover(function(){
                  var rate = $(this).data('value');
                  var i = 0;
                  $('.set-rating i').each(function(){
                      i++;
                      if(i <= rate){
                          $(this).addClass('active');
                      }else{
                          $(this).removeClass('active');
                      }
                  })
              })
              
              $('.set-rating i').mouseleave(function(){
                  var rate = $('input[name="rating"]:checked').val();
                  rate = parseInt(rate);
                  i = 0;
                    $('.set-rating i').each(function(){
                      i++;
                      if(i <= rate){
                          $(this).addClass('active');
                      }else{
                          $(this).removeClass('active');
                      }
                    })
              })
              
              $('.set-rating i').click(function(){
                  $('input[name="rating"]:nth('+ ($(this).data('value')-1) +')').prop('checked', true);
              });
            });
        </script>
        <div class="hidden">
	      &nbsp;&nbsp;&nbsp; <?php echo $entry_bad; ?>&nbsp;
	      <input type="radio" name="rating" value="1" />
	      &nbsp;
	      <input type="radio" name="rating" value="2" />
	      &nbsp;
	      <input type="radio" name="rating" value="3" />
	      &nbsp;
	      <input type="radio" name="rating" value="4" />
	      &nbsp;
	      <input type="radio" name="rating" value="5" />
	      &nbsp;<?php echo $entry_good; ?>
        </div>
        </div>
	  </div>
	  <div class="form-group required">
	    <div class="col-xs-12 col-sm-8">
	      <label class="control-label" for="input-review"><?php echo $entry_review; ?></label>
	      <textarea name="text" rows="5" id="input-review" class="form-control"></textarea>
	      
	    </div>
	  </div>
	  <?php echo $captcha; ?>
	    <div class="form-group">
           <div class="col-xs-12 col-sm-8 ">
             <div class="pull-right">
               <button type="button" id="button-review" data-loading-text="<?php echo $text_loading; ?>" class="btn btn-primary"><?php echo $button_continue; ?></button>
             </div>
           </div>
         </div>
	  <?php } else { ?>
	  <?php echo $text_login; ?>
	  <?php } ?>
	</form>
  </div>
  <?php } ?>

  
  <?php if ($products && $theme_options->get( 'product_related_status' ) != '0') { ?>
  <?php 
  $class = 3; 
  $id = rand(0, 5000)*rand(0, 5000); 
  $all = 4; 
  $row = 4; 
  
  if($theme_options->get( 'product_per_pow' ) == 6) { $class = 2; }
  if($theme_options->get( 'product_per_pow' ) == 5) { $class = 25; }
  if($theme_options->get( 'product_per_pow' ) == 3) { $class = 4; }
  
  if($theme_options->get( 'product_per_pow' ) > 1) { $row = $theme_options->get( 'product_per_pow' ); $all = $theme_options->get( 'product_per_pow' ); } 
  ?>
  <div class="box clearfix">
    <?php if($theme_options->get( 'product_scroll_related' ) != '0') { ?>
    <!-- Carousel nav -->
    <a class="next" href="#myCarousel<?php echo $id; ?>" id="myCarousel<?php echo $id; ?>_next"><span></span></a>
    <a class="prev" href="#myCarousel<?php echo $id; ?>" id="myCarousel<?php echo $id; ?>_prev"><span></span></a>
    <?php } ?>
  	
    <div class="box-heading"><?php echo $text_related; ?></div>
    <div class="strip-line"></div>
    <div class="box-content products related-products">
      <div class="box-product">
      	<div id="myCarousel<?php echo $id; ?>" <?php if($theme_options->get( 'product_scroll_related' ) != '0') { ?>class="carousel slide"<?php } ?>>
      		<!-- Carousel items -->
      		<div class="carousel-inner">
      			<?php $i = 0; $row_fluid = 0; $item = 0; foreach ($products as $product) { $row_fluid++; ?>
  	    			<?php if($i == 0) { $item++; echo '<div class="active item"><div class="product-grid"><div class="row">'; } ?>
  	    			<?php $r=$row_fluid-floor($row_fluid/$all)*$all; if($row_fluid>$all && $r == 1) { if($theme_options->get( 'product_scroll_related' ) != '0') { echo '</div></div></div><div class="item"><div class="product-grid"><div class="row">'; $item++; } else { echo '</div><div class="row">'; } } else { $r=$row_fluid-floor($row_fluid/$row)*$row; if($row_fluid>$row && $r == 1) { echo '</div><div class="row">'; } } ?>
  	    			<div class="col-sm-<?php echo $class; ?> col-xs-6">
  	    				<?php include('catalog/view/theme/'.$config->get('config_template').'/template/new_elements/product.tpl'); ?>
  	    			</div>
      			<?php $i++; } ?>
      			<?php if($i > 0) { echo '</div></div></div>'; } ?>
      		</div>
  	  </div>
      </div>
    </div>
  </div>
  
  <?php if($theme_options->get( 'product_scroll_related' ) != '0') { ?>
  <script type="text/javascript">
  $(document).ready(function() {
    var owl<?php echo $id; ?> = $(".box #myCarousel<?php echo $id; ?> .carousel-inner");
  	
    $("#myCarousel<?php echo $id; ?>_next").click(function(){
        owl<?php echo $id; ?>.trigger('owl.next');
        return false;
      })
    $("#myCarousel<?php echo $id; ?>_prev").click(function(){
        owl<?php echo $id; ?>.trigger('owl.prev');
        return false;
    });
      
    owl<?php echo $id; ?>.owlCarousel({
        slideSpeed : 500,
        singleItem:true,
        <?php if($page_direction[$config->get( 'config_language_id' )] == 'RTL'): ?>
        direction: 'rtl'
        <?php endif; ?>
     });
  });
  </script>
  <?php } ?>
  <?php } ?>
  
</div>
<script type="text/javascript"><!--
$('select[name=\'recurring_id\'], input[name="quantity"]').change(function(){
	$.ajax({
		url: 'index.php?route=product/product/getRecurringDescription',
		type: 'post',
		data: $('input[name=\'product_id\'], input[name=\'quantity\'], select[name=\'recurring_id\']'),
		dataType: 'json',
		beforeSend: function() {
			$('#recurring-description').html('');
		},
		success: function(json) {
			$('.alert, .text-danger').remove();
			
			if (json['success']) {
				$('#recurring-description').html(json['success']);
			}
		}
	});
});
//--></script> 
<script type="text/javascript"><!--
$('#button-cart').on('click', function() {
	$.ajax({
		url: 'index.php?route=checkout/cart/add',
		type: 'post',
		data: $('#product input[type=\'text\'], #product input[type=\'hidden\'], #product input[type=\'radio\']:checked, #product input[type=\'checkbox\']:checked, #product select, #product textarea'),
		dataType: 'json',
		beforeSend: function() {
			$('#button-cart').button('loading');
		},
		complete: function() {
			$('#button-cart').button('reset');
		},
		success: function(json) {
			$('.alert, .text-danger').remove();
			$('.form-group').removeClass('has-error');

			if (json['error']) {
				if (json['error']['option']) {
					for (i in json['error']['option']) {
						var element = $('#input-option' + i.replace('_', '-'));
						
						if (element.parent().hasClass('input-group')) {
							element.parent().after('<div class="text-danger">' + json['error']['option'][i] + '</div>');
						} else {
							element.after('<div class="text-danger">' + json['error']['option'][i] + '</div>');
						}
					}
				}
				
				if (json['error']['recurring']) {
					$('select[name=\'recurring_id\']').after('<div class="text-danger">' + json['error']['recurring'] + '</div>');
				}
				
				// Highlight any found errors
				$('.text-danger').parent().addClass('has-error');
			}
			
			if (json['success']) {
				$.notify({
					message: json['success'],
					target: '_blank'
				},{
					// settings
					element: 'body',
					position: null,
					type: "info",
					allow_dismiss: true,
					newest_on_top: false,
					placement: {
						from: "top",
						align: "right"
					},
					offset: 20,
					spacing: 10,
					z_index: 2031,
					delay: 5000,
					timer: 1000,
					url_target: '_blank',
					mouse_over: null,
					animate: {
						enter: 'animated fadeInDown',
						exit: 'animated fadeOutUp'
					},
					onShow: null,
					onShown: null,
					onClose: null,
					onClosed: null,
					icon_type: 'class',
					template: '<div data-notify="container" class="col-xs-11 col-sm-3 alert alert-success" role="alert">' +
						'<button type="button" aria-hidden="true" class="close" data-notify="dismiss">×</button>' +
						'<span data-notify="message"><i class="fa fa-check-circle"></i>&nbsp; {2}</span>' +
						'<div class="progress" data-notify="progressbar">' +
							'<div class="progress-bar progress-bar-success" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100" style="width: 0%;"></div>' +
						'</div>' +
						'<a href="{3}" target="{4}" data-notify="url"></a>' +
					'</div>' 
				});
				
				$('#cart_block #cart_content').load('index.php?route=common/cart/info #cart_content_ajax');
                $('#cart_block #total_price_ajax').load('index.php?route=common/cart/info #total_price');
                $('#cart_block #cart_count_ajax').load('index.php?route=common/cart/info #cart_count');
                $('#cart-total').html(json['total']);
			}
		},
        error: function(xhr, ajaxOptions, thrownError) {
            alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
		}
	});
});
//--></script> 
<script type="text/javascript"><!--
$('.date').datetimepicker({
	pickTime: false
});

$('.datetime').datetimepicker({
	pickDate: true,
	pickTime: true
});

$('.time').datetimepicker({
	pickDate: false
});
		
$('button[id^=\'button-upload\']').on('click', function() {
	var node = this;
	
	$('#form-upload').remove();
	
	$('body').prepend('<form enctype="multipart/form-data" id="form-upload" style="display: none;"><input type="file" name="file" /></form>');
	
	$('#form-upload input[name=\'file\']').trigger('click');
	
	timer = setInterval(function() {
		if ($('#form-upload input[name=\'file\']').val() != '') {
			clearInterval(timer);
			
			$.ajax({
				url: 'index.php?route=tool/upload',
				type: 'post',
				dataType: 'json',
				data: new FormData($('#form-upload')[0]),
				cache: false,
				contentType: false,
				processData: false,
				beforeSend: function() {
					$(node).button('loading');
				},
				complete: function() {
					$(node).button('reset');
				},
				success: function(json) {
					$('.text-danger').remove();
					
					if (json['error']) {
						$(node).parent().find('input').after('<div class="text-danger">' + json['error'] + '</div>');
					}
					
					if (json['success']) {
						alert(json['success']);
						
						$(node).parent().find('input').attr('value', json['code']);
					}
				},
				error: function(xhr, ajaxOptions, thrownError) {
					alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
				}
			});
		}
	}, 500);
});
//--></script> 
<script type="text/javascript"><!--
$('#review').delegate('.pagination a', 'click', function(e) {
	e.preventDefault();
	
    $('#review').fadeOut('slow');
        
    $('#review').load(this.href);
    
    $('#review').fadeIn('slow');
});         

$('#review').load('index.php?route=product/product/review&product_id=<?php echo $product_id; ?>');

$('#button-review').on('click', function() {
    $.ajax({
        url: 'index.php?route=product/product/write&product_id=<?php echo $product_id; ?>',
        type: 'post',
        dataType: 'json',
        data: $("#form-review").serialize(),
        beforeSend: function() {
            $('#button-review').button('loading');
        },
        complete: function() {
            $('#button-review').button('reset');
        },
        success: function(json) {
			$('.alert-success, .alert-danger').remove();
            
			if (json['error']) {
                $('#review').after('<div class="alert alert-danger"><i class="fa fa-exclamation-circle"></i> ' + json['error'] + '</div>');
            }
            
            if (json['success']) {
                $('#review').after('<div class="alert alert-success"><i class="fa fa-check-circle"></i> ' + json['success'] + '</div>');
                                
                $('input[name=\'name\']').val('');
                $('textarea[name=\'text\']').val('');
                $('input[name=\'rating\']:checked').prop('checked', false);
            }
        }
    });
});
</script>

<script type="text/javascript"><!--
$(document).ready(function() {     
	$('.popup-gallery').magnificPopup({
		delegate: 'a.popup-image',
		type: 'image',
		tLoading: 'Loading image #%curr%...',
		mainClass: 'mfp-with-zoom',
		gallery: {
			enabled: true,
			navigateByImgClick: true,
			preload: [0,1] // Will preload 0 - before current, and 1 after the current image
		},
		image: {
			tError: '<a href="%url%">The image #%curr%</a> could not be loaded.',
			titleSrc: function(item) {
				return item.el.attr('title');
			}
		}
	});
});
//--></script> 

<script type="text/javascript">
var ajax_price = function() {
	$.ajax({
		type: 'POST',
		url: 'index.php?route=product/liveprice/index',
		data: $('.product-info input[type=\'text\'], .product-info input[type=\'hidden\'], .product-info input[type=\'radio\']:checked, .product-info input[type=\'checkbox\']:checked, .product-info select, .product-info textarea'),
		dataType: 'json',
			success: function(json) {
			if (json.success) {
				change_price('#price-special', json.new_price.special);
				change_price('#price-tax', json.new_price.tax);
				change_price('#price-old', json.new_price.price);
			}
		}
	});
}

var change_price = function(id, new_price) {
	$(id).html(new_price);
}

$('.product-info input[type=\'text\'], .product-info input[type=\'hidden\'], .product-info input[type=\'radio\'], .product-info input[type=\'checkbox\'], .product-info select, .product-info textarea, .product-info input[name=\'quantity\']').on('change', function() {
	ajax_price();
});
</script>

<script type="text/javascript">
$.fn.tabs = function() {
	var selector = this;
	
	this.each(function() {
		var obj = $(this); 
		
		$(obj.attr('href')).hide();
		
		$(obj).click(function() {
			$(selector).removeClass('selected');
			
			$(selector).each(function(i, element) {
				$($(element).attr('href')).hide();
			});
			
			$(this).addClass('selected');
			
			$($(this).attr('href')).show();
			
			return false;
		});
	});

	$(this).show();
	
	$(this).first().click();
};
</script>

<script type="text/javascript"><!--
$('#tabs a').tabs();
//--></script> 

<?php if($theme_options->get( 'product_image_zoom' ) != 2) { 
echo '<script type="text/javascript" src="catalog/view/theme/' . $config->get( 'config_template' ) . '/js/jquery.elevateZoom-3.0.3.min.js"></script>';
} ?>

<?php include('catalog/view/theme/'.$config->get('config_template').'/template/new_elements/wrapper_bottom.tpl'); ?>
<?php echo $footer; ?>

 

 

Змінено користувачем DinC
спойлер
Надіслати
Поділитися на інших сайтах


  • 2 weeks later...

Добрый день. При фильтрации товаров в категории с помощью фильтра Ajax Filter Free (задействует технологию Ajax) выбирается неверный продукт в категории товаров, а для быстрого заказа нужного товара необходимо перезагрузить страницу. Существует ли возможность правильной работы модуля с использованием технологии Ajax?

Надіслати
Поділитися на інших сайтах


В 19.07.2019 в 20:21, thedealer сказал:

Добрый день. При фильтрации товаров в категории с помощью фильтра Ajax Filter Free (задействует технологию Ajax) выбирается неверный продукт в категории товаров, а для быстрого заказа нужного товара необходимо перезагрузить страницу. Существует ли возможность правильной работы модуля с использованием технологии Ajax?

 

Да пропишите кнопку в подгружаемый фильтром tpl

Надіслати
Поділитися на інших сайтах

Здраствуйте. Поставила ваш модуль Opencart - Быстрый заказ («Buy one click») с опциями, целями Яндекс и Google + бесплатные SMS! на  Версия ocStore 2.3.0.2.3

кнопка есть но при открытии окна  выдает ошибку 

Быстрый заказ

Warning: imagecreatetruecolor(): Invalid image dimensions in /home/mjmwtyff/public_html/system/library/image.php on line 105Warning: imagealphablending() expects parameter 1 to be resource, boolean given in /home/mjmwtyff/public_html/system/library/image.php on line 108Warning: imagesavealpha() expects parameter 1 to be resource, boolean given in /home/mjmwtyff/public_html/system/library/image.php on line 109Warning: imagecolorallocatealpha() expects parameter 1 to be resource, boolean given in /home/mjmwtyff/public_html/system/library/image.php on line 110Warning: imagecolortransparent() expects parameter 1 to be resource, boolean given in /home/mjmwtyff/public_html/system/library/image.php on line 111Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in /home/mjmwtyff/public_html/system/library/image.php on line 116Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in /home/mjmwtyff/public_html/system/library/image.php on line 118Warning: Missing argument 2 for Cart\Currency::format(), called in /home/mjmwtyff/public_html/catalog/controller/common/buyoneclick.php on line 167 and defined in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 24Notice: Undefined variable: currency in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 25Notice: Undefined index: in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 25Notice: Undefined variable: currency in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 26Notice: Undefined index: in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 26Notice: Undefined variable: currency in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 27Notice: Undefined index: in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 27Notice: Undefined variable: currency in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 30Notice: Undefined index: in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 30Warning: Missing argument 2 for Cart\Currency::format(), called in /home/mjmwtyff/public_html/catalog/controller/common/buyoneclick.php on line 182 and defined in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 24Notice: Undefined variable: currency in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 25Notice: Undefined index: in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 25Notice: Undefined variable: currency in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 26Notice: Undefined index: in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 26Notice: Undefined variable: currency in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 27Notice: Undefined index: in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 27Notice: Undefined variable: currency in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 30Notice: Undefined index: in /home/mjmwtyff/public_html/system/library/cart/currency.php on line 30
подскажите где я накосячила и как исправить?
Надіслати
Поділитися на інших сайтах


  • 1 month later...

Добрый день.
Вылазит ошибка следующая ( я уже и перезалил версию и поставил на другой опенкарт) вот бьюсь и не могу понять где что летит!
Warning: imagecreatetruecolor(): Invalid image dimensions in D:\OSPanel\domains\mynew.test.com\upload\system\library\image.php on line 105Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in D:\OSPanel\domains\mynew.test.com\upload\system\library\image.php on line 113Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in D:\OSPanel\domains\mynew.test.com\upload\system\library\image.php on line 116Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in D:\OSPanel\domains\mynew.test.com\upload\system\library\image.php on line 118
Fatal error: Uncaught ArgumentCountError: Too few arguments to function Cart\Currency::format(), 1 passed in D:\OSPanel\domains\mynew.test.com\upload\catalog\controller\common\buyoneclick.php on line 167 and at least 2 expected in D:\OSPanel\domains\mynew.test.com\upload\system\library\cart\currency.php:24 Stack trace: #0 D:\OSPanel\domains\mynew.test.com\upload\catalog\controller\common\buyoneclick.php(167): Cart\Currency->format(122) #1 D:\OSPanel\domains\mynew.test.com\upload\catalog\controller\common\buyoneclick.php(221): ControllerCommonBuyoneclick->index() #2 D:\OSPanel\domains\mynew.test.com\upload\system\storage\modification\system\engine\action.php(51): ControllerCommonBuyoneclick->info() #3 D:\OSPanel\domains\mynew.test.com\upload\catalog\controller\startup\router.php(25): Action->execute(Object(Registry)) #4 D:\OSPanel\domains\mynew.test.com\upload\system\storage\modification\system\engine\action.php(51): ControllerStartupRouter->index() #5 D:\OSPanel\domains\mynew.test.com\upload\system\engine\front.php(34): A in D:\OSPanel\domains\mynew.test.com\upload\system\library\cart\currency.php on line 24

Надіслати
Поділитися на інших сайтах


5 часов назад, konstantinKanivec сказал:

Добрый день.
Вылазит ошибка следующая ( я уже и перезалил версию и поставил на другой опенкарт) вот бьюсь и не могу понять где что летит!
Warning: imagecreatetruecolor(): Invalid image dimensions in D:\OSPanel\domains\mynew.test.com\upload\system\library\image.php on line 105Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in D:\OSPanel\domains\mynew.test.com\upload\system\library\image.php on line 113Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in D:\OSPanel\domains\mynew.test.com\upload\system\library\image.php on line 116Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in D:\OSPanel\domains\mynew.test.com\upload\system\library\image.php on line 118
Fatal error: Uncaught ArgumentCountError: Too few arguments to function Cart\Currency::format(), 1 passed in D:\OSPanel\domains\mynew.test.com\upload\catalog\controller\common\buyoneclick.php on line 167 and at least 2 expected in D:\OSPanel\domains\mynew.test.com\upload\system\library\cart\currency.php:24 Stack trace: #0 D:\OSPanel\domains\mynew.test.com\upload\catalog\controller\common\buyoneclick.php(167): Cart\Currency->format(122) #1 D:\OSPanel\domains\mynew.test.com\upload\catalog\controller\common\buyoneclick.php(221): ControllerCommonBuyoneclick->index() #2 D:\OSPanel\domains\mynew.test.com\upload\system\storage\modification\system\engine\action.php(51): ControllerCommonBuyoneclick->info() #3 D:\OSPanel\domains\mynew.test.com\upload\catalog\controller\startup\router.php(25): Action->execute(Object(Registry)) #4 D:\OSPanel\domains\mynew.test.com\upload\system\storage\modification\system\engine\action.php(51): ControllerStartupRouter->index() #5 D:\OSPanel\domains\mynew.test.com\upload\system\engine\front.php(34): A in D:\OSPanel\domains\mynew.test.com\upload\system\library\cart\currency.php on line 24

в большинстве случаев ошибка связана с тем, что контейнер в шаблоне переименован...

Надіслати
Поділитися на інших сайтах

Вопрос такой: при оформлении заказа клиент не указывает email (это поле отключено). Админу приходит письмо с заказом (в кол-ве двух штук), т.к. в заказ почему-то вставляется почта админа. Как это исправить? Куда вставить переменную, типа почты @localhost.net?

Надіслати
Поділитися на інших сайтах


Добрый день. Возникла проблема с оформлением заказа в 1 клик. При оформлении заказа, в админку и базу попадает заказ со ссылкой на товар, но данных о пользователе нет: имени, телефона, эл.почты. Помогите решить проблему.

Надіслати
Поділитися на інших сайтах


В 20.07.2019 в 18:30, Wadamir сказал:

 

Да пропишите кнопку в подгружаемый фильтром tpl

Добрый день. Кнопку добавил так как она не появилась, но выдает ошибку "error_product "

Змінено користувачем Neizvesten8
Надіслати
Поділитися на інших сайтах


Здравствуйте! Установил 2 Ваших модуля, кнопка обратного звонка и быстрый заказ, инсталлировалось без ошибок, но  не отображается не тот не тот. Тема не дефолтная (Paw Flower), версия опенкарт 2.2.0.0.0.Пробовал разобраться с советами по адаптации, не осилил). Сайт написал в личку За ранее благодарен.

Павел.

Надіслати
Поділитися на інших сайтах


  • 2 weeks later...

Доброго времени суток !

установил модуль на версию 2.3, все работает, кое-где допилил...

но форма работает на ПК и не работает на планшетах и мобильных, выскакивает все та же ошибка "error_product ",

с чем это связано ?

Надіслати
Поділитися на інших сайтах


Установил ваш продукт, но т.к. мой шаблон сильно отличается от дефолтного, пришлось все вставлять руками.

Были некоторые сложности связанные с особенностями моего шаблона, но я их пофиксил.

В итоге все отображается и работает, но есть небольшой баг - с одного заказа получаю 2 письма на почту администратора.

Если отключить глобально метод send(), то получаю одно письмо. Но тогда это отражается на других модулях.

Подскажите мне пожалуйста, в чем нюанс заключен? Пока найти не удалось :)

 

 

Надіслати
Поділитися на інших сайтах


2 минуты назад, eurobalt1 сказал:

Установил ваш продукт, но т.к. мой шаблон сильно отличается от дефолтного, пришлось все вставлять руками.

Были некоторые сложности связанные с особенностями моего шаблона, но я их пофиксил.

В итоге все отображается и работает, но есть небольшой баг - с одного заказа получаю 2 письма на почту администратора.

Если отключить глобально метод send(), то получаю одно письмо. Но тогда это отражается на других модулях.

Подскажите мне пожалуйста, в чем нюанс заключен? Пока найти не удалось :)

 

Решил вопрос, стоит прописать дефолтный емайл для отправителя, чтобы не дублировал почту администратору

 

Надіслати
Поділитися на інших сайтах


2 часа назад, eurobalt1 сказал:

Установил ваш продукт, но т.к. мой шаблон сильно отличается от дефолтного, пришлось все вставлять руками.

Были некоторые сложности связанные с особенностями моего шаблона, но я их пофиксил.

В итоге все отображается и работает, но есть небольшой баг - с одного заказа получаю 2 письма на почту администратора.

Если отключить глобально метод send(), то получаю одно письмо. Но тогда это отражается на других модулях.

Подскажите мне пожалуйста, в чем нюанс заключен? Пока найти не удалось :)

 

 

 

Это не баг, а фича! Два письма администратор уже точно не пропустит!

А если правда - пока так, в следующей версии планирую поправить.

Надіслати
Поділитися на інших сайтах

Здравствуйте! Возникла следующая проблема. Загрузил в Ocstore 2.3.0.2.3 версию BuyOneClick_v.3.1.zip -> BuyOneClick_v.3.1.3.multi.2.3.ocmod.zip путем загрузки файлов по ФТП. Активировал модуль в разделе Дополнения - кнопка "Установить".

Ничего не произошло, в карточках товаров кнопка "быстро купить" не появилась.

Попробовал поставить модуль через загрузчик дополнений, модуль установился. Но ничего не изменилось...

 

Но потом понял, что не ту версию накатывал, а надо устанавливать BuyOneClick_v.3.0.zip -> BuyOneClick_v.3.0.3.multi.2.3.ocmod.zip

 

Сейчас заменил файлы в папках, но в карточке товаров так и не появилась заветная кнопка.

Пробую закачать модуль через "Установка дополнений" - мне выводится сообщение: "Модификатор Opencart - Быстрый заказ for OpenCart 2.0.x, 2.1.x уже использует уникальный ID код который вы пытаетесь загрузить!"

 

Что это за сообщение и как повторно загрузить модуль через админ панель???

Заменил номер идентефикатора на отличный, загрузка произвелась, но отображения кнопки не появилось(

 

В темплейтах ничего не правил, но кнопка не отображается ((

 

Змінено користувачем Maksss
Надіслати
Поділитися на інших сайтах


7 часов назад, Maksss сказал:

Здравствуйте! Возникла следующая проблема. Загрузил в Ocstore 2.3.0.2.3 версию BuyOneClick_v.3.1.zip -> BuyOneClick_v.3.1.3.multi.2.3.ocmod.zip путем загрузки файлов по ФТП. Активировал модуль в разделе Дополнения - кнопка "Установить".

Ничего не произошло, в карточках товаров кнопка "быстро купить" не появилась.

Попробовал поставить модуль через загрузчик дополнений, модуль установился. Но ничего не изменилось...

 

Но потом понял, что не ту версию накатывал, а надо устанавливать BuyOneClick_v.3.0.zip -> BuyOneClick_v.3.0.3.multi.2.3.ocmod.zip

 

Сейчас заменил файлы в папках, но в карточке товаров так и не появилась заветная кнопка.

Пробую закачать модуль через "Установка дополнений" - мне выводится сообщение: "Модификатор Opencart - Быстрый заказ for OpenCart 2.0.x, 2.1.x уже использует уникальный ID код который вы пытаетесь загрузить!"

 

Что это за сообщение и как повторно загрузить модуль через админ панель???

Заменил номер идентефикатора на отличный, загрузка произвелась, но отображения кнопки не появилось(

 

В темплейтах ничего не правил, но кнопка не отображается ((

 

 

1. Старый модификатор надо удалить.

2. Шаблон дефолтный?

Надіслати
Поділитися на інших сайтах

Добрый день. Подскажите, пожалуйста, как задать условие чтоб кнопка быстрого заказа отображалась только если стоимость товара свыше суммы минимального заказа на сайте? Заранее благодарю! Использую ocStore 2.1.0.2.1

Змінено користувачем Shkodich
Надіслати
Поділитися на інших сайтах


Ну как - ставить проверку на сумму в контроллере.

Типа $buyoneclick_status = ($price > 100) ? true : false.

Только не спрашивайте куда это вставить. Вставлять в контроллер!

  • +1 1
Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.