scheduleNaše prodejny a otvírací doba
Lokalizace
Formulář se odesílá

FFWD DRIFT PACE (48 mm) 28" sada kol, DT240 2:1 EXP

Provedení
1 899 
Našel jsi lepší cenu?
replay
Prodloužená možnost vrácení až na 100 dní Víc info
credit_score

FFWD DRIFT PACE (48 mm) 28" sada kolies

Sada karbónových kolies FFWD DRIFT PACE s výškou ráfiku 48 mm je určená pre súťažné gravel jazdenie a dlhé trasy. Vďaka vylepšenej technológii LAW TECH, nízkej hmotnosti a aerodynamickému dizajnu poskytujú maximálnurýchlosť a stabilitu aj na náročných tratiach. Ráfik s hookless patkami a šírkou umožňuje použitie širších plášťov pre lepšiu priľnavosť a pohodlie. Kolesá sú osadené špičkovými nábojmi DT Swiss 240 EXP 2:1 a pevnými výpletmi Sapim CX-Ray/CX-Sprint, čo zaručuje vysokú odolnosť a spoľahlivosť.
Vlastnosti produktu
Bezdušové hookless patky pre lepšiu kompatibilitu plášťov
Výplet Sapim CX-Ray/CX-Sprint Straightpull v pomere 2:1
Náboje DT Swiss 240 EXP 2:1 Straightpull s CenterLock uchytením
Detaily produktu
Materiál karbon
Umístění Sada
Ořech SRAM XDR, Shimano HG, Shimano Micro Spline, Campagnolo ED, Campagnolo N3W
Výška ráfku 48 mm
Montáž brzdového kotouče Center Lock (CL)
Vnitřní šířka ráfku (silniční) 28 mm
Vnější šířka ráfku 35 mm
Hmotnost 1 450 g (±3 %)
Nosnost 120 kg
Doporuč. šířka pláště 38 – 60 mm
Max. tlak 3.5 Bar
ID produktu 354457
Formulář se odesílá
Hodnocení produktu  (0 hodnocení)
0/5
(0 hodnocení)
(0 hodnocení)
(0 hodnocení)
(0 hodnocení)
(0 hodnocení)
(0 hodnocení)

Jak hodnotíš produkt ty?
Přidat hodnocení
Pomoz ostatním, získej body a nakupuj levněji až o 15 % díky věrnostnímu systému
comment Otázky k produktu

Momentálně se tu nenacházejí žádné otázky

Formulář se odesílá
FFWD (Fast Forward) je značka z Nizozemska, která vznikla v r. 2006 a známá je tím, že ručně montuje všechna kola ve svém domovském závodě. V nabídce naleznete kola pro různé disciplíny cyklistiky, oblíbené jsou jejich karbonové modely, nechybí ani disková nebo paprsková kola.

Tady najdeš odpovědi na své otázky ohledně dopravy, platby, bezpečnosti a mnoho dalšího.

Můžeš zkusit i tato vyhledávání
K tomuto produktu se můžou hodit
Proč nakupovat u nás
Poznej výhody nákupu
1 000 000+ objednávek

Jsme největší cyklistický e-shop na Slovensku ověřený desítkami tisíc spokojených zákazníků.

Jedinečný zákaznický servis

Jsme k dispozici přes e-mail, chat, telefon nebo osobně v MTBIKER centru.

Aktivně podporujeme cyklistiku na Slovensku

I díky Tvé objednávce podporujeme rozvoj cyklistiky.

Bezpečný nákup a platební metody

Proces platby je bezpečný a nabízíme Ti široké možnosti.

Věrnostní systém

Odměníme Tě za nákup, stejně jako za kvalitní příspěvky v MTBIKER fóru, e-shopu, vyjížďkách a fotogalerii.

MTBIKER centrum a showroom

Navštiv nás na prodejně s pump-trackem u trailů nebo v historické budově v centru Bratislavy.

navigate_beforepředchozí navigate_nextďalší
keyboard_arrow_up var loadedComments_questionsWidget = false; function loadComments_questionsWidget(){ } var imageUploaderI18N = {"confirmDelete":"Opravdu chce\u0161 smazat tento obr\u00e1zek?","labelDelete":"Smazat obr\u00e1zek","textMaxSize":"Soubor :file p\u0159eshauje maxim\u00e1ln\u00ed velikost 12 MB.","textMaxFiles":"Soubor :file nemohl b\u00fdt nahr\u00e1n, proto\u017ee m\u016f\u017ee\u0161 nahr\u00e1t nejv\u00fd\u0161e :max fotek.","textWrongMime":"MIME typ souboru :file se neshoduje s povolen\u00fdmi MIME typy:","textWrongExtension":"Soubor :file je nepovolen\u00e9ho typu. Povolen\u00e9 typy jsou:","textEditTitlePrompt":"Zadej popis obr\u00e1zku","textEditTitleBtn":"Upravit popis obr\u00e1zku"} // Comments $(function(){ $('.comment-form, .review-form', '#questionsWidget').on('submit', function(){ $(this).attr('autocomplete',"off"); // prevent prepopulating fields on backbtn click if (history.state && history.state.popupOpened === 'mobile-expander'){ $('.mobile-expander-content', '#questionsWidget').addClass('opened'); history.back(); } }); $('select[name=sort], select[name=filter]', '#questionsWidget').on('change', function() { let inputName = $(this).attr('name'); let sort = $('select[name=sort]', '#questionsWidget').val(); let filter = $('select[name=filter]', '#questionsWidget').length ? $('select[name=filter]', '#questionsWidget ').val() : ''; var url = "/ajax.php?m=komentare&f=loadCommentsWidget&a=bW9kdWw9c2hvcCZleHRlcm5hbElkPTM1NDQ1NyZpdGVtTmFtZT1GRldEK0RSSUZUK1BBQ0UrJTI4NDgrbW0lMjkrMjglMjZxdW90JTNCK3NhZGEra29sJTJDK0RUMjQwKzIlM0ExK0VYUCZjb21tZW50VHlwZT1xdWVzdGlvbiZhdXRob3JVc2VySWQ9MCZ3aWRnZXRJZD1xdWVzdGlvbnNXaWRnZXQmYWxsb3dJbnNlcnQ9MSZhbGxvd1JlcGx5PTEmYWRkaXRpb25hbEV4dGVybmFsSWRzJTVCMCU1RD0zNTQ0NTYmcmV0dXJuVXJsPWh0dHBzJTNBJTJGJTJGd3d3Lm10YmlrZXIuY3olMkZzaG9wJTJGa29sYS1hLXJhZmt5JTJGdnlwbGV0ZW5hLWtvbGElMkZzaWxuaWNuaS1rb2xhJTJGZmZ3ZC1kcmlmdC1wYWNlLTQ4LW1tLTI4cXVvdC1zYWRhLWtvbC1kdDI0MC0yMS1leHAtcDM1NDQ1Ny5odG1sJTIzcXVlc3Rpb25zJnBhcnNlZFVybCU1QnNjaGVtZSU1RD1odHRwcyZwYXJzZWRVcmwlNUJob3N0JTVEPXd3dy5tdGJpa2VyLmN6JnBhcnNlZFVybCU1QnBhdGglNUQ9JTJGc2hvcCUyRmtvbGEtYS1yYWZreSUyRnZ5cGxldGVuYS1rb2xhJTJGc2lsbmljbmkta29sYSUyRmZmd2QtZHJpZnQtcGFjZS00OC1tbS0yOHF1b3Qtc2FkYS1rb2wtZHQyNDAtMjEtZXhwLXAzNTQ0NTcuaHRtbCZwYXJzZWRVcmwlNUJmcmFnbWVudCU1RD1xdWVzdGlvbnMmaW5jbHVkZUNvbW1lbnRJZD0w|" + sort + "|" + filter; if (inputName === 'filter') { if (parseInt(filter) === 3 && !customScoreDone) { loadScoreSettingsModal(); return false; } } $('#questionsWidget .comments-body-content').addClass('show-loading'); $.ajax({ url: url, success: function(data) { $('#questionsWidget .comments-body-content').html(data).removeClass('show-loading'); } }); }); }); var commentFileUploaderquestionsWidget = $('.comments-photo-uploader', '#questionsWidget').imageUploader({ hasMain: false, imagesInputName: 'fotokom', preloadedInputName: 'fotokom_preloaded', preloaded: [], maxSize: 12582912, resize: {width: 1280, height: 1920}, maxFiles: 10, }); var commentFormSubmitting = false; $('.comment-form', '#questionsWidget').unbind('submit'); $('.comment-form', '#questionsWidget').on('submit', function(e){ e.preventDefault(); if (commentFormSubmitting) return false; var commentFormSubmitting = true; var $form = $(this); var $commentParent; $form.addClass('show-loading'); $('input[name="fotokom[]"]', $form).prop('disabled', true); var formData = new FormData(this); $.each(commentFileUploaderquestionsWidget.getFiles(),function(i,file){ formData.append('fotokom['+i+']', file); }); $('.invalid-feedback', $form).remove(); $('.is-invalid', $form).removeClass('is-invalid'); var parentId = $form.find("[name=parent]").val(); parentId = parentId ? parseInt(parentId) : 0; var isReply = true && parentId; if (isReply) { $commentParent = $('#commentBox' + parentId); formData.append('level', $commentParent.parents('.comments-replies').length); } $.ajax({ type: "POST", url: "/ajax.php?m=komentare&f=ajaxSaveForm&a=", data: formData, processData: false, contentType: false, success: function(data) { if (isReply && data) { // return comment html (shop only) if ($commentParent.next('.comments-replies').length){ $commentParent.next('.comments-replies').replaceWith($(data)); } else { $commentParent.after($(data)); } // Remove reward container if ($commentParent.find('.reward-container').length) { $commentParent.find('.reward-container').remove(); } let $toHighlight = $('.to-highlight', '#questionsWidget'); if ($toHighlight.length) { $toHighlight.removeClass('to-highlight'); scrollAndHighlightComment('#' + $toHighlight.attr('id'), false); } // Remove 'loyalty-reward' from the url setTimeout(function() { if (window.location.hash.includes("?loyalty-reward=1")) { const newHash = window.location.hash.replace("?loyalty-reward=1", ""); history.replaceState(null, "", newHash); } }, 1000); // reset form resetCommentForm($form.closest('.comments')); $('input[name="fotokom[]"]', $form).prop('disabled', false); $('.comment-form-with-uploader-popup.collapse').collapse('hide'); commentFormSubmitting = false; $form.removeClass('show-loading'); } else { // returns js relocate window.onhashchange = function (e) { e.preventDefault(); window.location.reload(); return false; } $('.mainSite').append(data); // location.reload(); } }, error: function(data){ commentFormSubmitting = false; $form.removeClass('show-loading'); if (data && data.responseJSON && data.responseJSON.formErrors){ $.each(data.responseJSON.formErrors, function(name, error){ $("[name="+name+"]", $form).after('
'+error.join('
')+'
'); $("[name="+name+"]", $form).closest('.form-group').find('input, select, textarea, .dropdown').addClass('is-invalid'); }); } $firstInvalidEl = $(".is-invalid", $form).first(); $firstInvalidEl.focus(); $('input[name="fotokom[]"]', $form).prop('disabled', false); } }); return false; }); // Comments function toggleHiddenComment(comment_id) { $("#commentBox" + comment_id + " .comment-hidden").remove(); $("#commentBox" + comment_id + " .comment-content").show(); } function closeScoreFilterBanner() { $('#commentsScoreFilterBanner').fadeOut(150); $.post('/ajax.php?m=komentare&f=closeScoreFilterBanner'); } function commentsScroll(toElement, offset, noAnimation){ // edit/reply from feed link if ((typeof toElement === 'string' || toElement instanceof String) && toElement.indexOf('#commentBox') >= 0) { let commentId = parseInt(toElement.replace('#commentBox', '')); if (!isNaN(commentId) && commentId) { if (parseInt(localStorage.getItem('replyToCommentId')) === commentId) { localStorage.removeItem('replyToCommentId'); if ($('.comment-reply-btn', toElement).length) { history.replaceState(null, null, ' '); setTimeout(function(){ $('.comment-reply-btn', toElement).first().click(); }, 0); return; } } else if(parseInt(localStorage.getItem('editCommentId')) === commentId) { localStorage.removeItem('editCommentId'); if ( $('.comment-edit-btn', toElement).length) { history.replaceState(null, null, ' '); $('.comment-edit-btn', toElement).first().click(); return; } } } } if (!offset) offset = 0; if (!window.matchMedia("(min-width: 768px)").matches && false) { if ($(toElement).length) { $(toElement).closest('.comments-body-content').scrollTo( toElement, 800, {offset: -10 + offset} ); } } else { if ($(toElement).length){ var headerhHeight = 120 + ($('#shop-info-bar').length ? $('#shop-info-bar').outerHeight() : 0); if (!window.matchMedia("(min-width: 768px)").matches){ headerhHeight = $('#header').outerHeight() + $('#shop-detail-nav').outerHeight() + 20; } if (noAnimation){ setTimeout(function(){ $(window).scrollTop($(toElement).offset().top - headerhHeight + offset); }, 100); var dontScrollAgain = false; setTimeout(function(){ dontScrollAgain = true; }, 3000); $(window).on('load', function(){ if (!dontScrollAgain) $(window).scrollTop($(toElement).offset().top - headerhHeight + offset); }); } else { $.scrollTo( toElement, 800, {offset: -headerhHeight + offset} ); } } } } var customScoreDone = false; function loadMoreComments(btn) { let $btn = $(btn); if ($btn.find('.spinner-border:visible').length) { return false; } let nextPage = parseInt($btn.data('page')) + 1; let perPage = parseInt($btn.data('per-page')); $btn.find('.spinner-border').css("display", "inline-block"); $btnWrap = $btn.closest('.comment-load-more-wrap'); $.get("/ajax.php?m=komentare&f=loadMoreComments&a=" + $btn.data('params') + "|" + $btn.data('sort') + '|' + $btn.data('score') + '|' + nextPage, "", function (data) { $data = $('
' + data + '
'); $btnWrap.before($data.html()); $btn.find('.spinner-border').css("display", "none"); $btn.data('page', nextPage); if ($data.find('.comment:not(.comment-reply)').length < perPage) { $btnWrap.hide(); } }); } function showReviewFormForProduct(el, productId, editId){ let $btn = $(el); if ($btn.hasClass('loading-simple')) { return; } $btn.addClass('loading-simple'); $.get("/ajax.php?m=komentare&f=getReviewFormForProduct&a=" + productId + "|0|0" + (editId ? '|' + editId : ''), "", function (data) { if (data){ $('#reviewsFormPopup').remove(); $('body').append(data); $('#reviewsFormPopup').modal('show'); } $btn.removeClass('loading-simple'); }); } function translateComment(id){ var $text = $('#kom_' + id); var $textTranslated = $('#kom_translation_' + id); var $btn = $('#commentBox' + id + ' .comment-translate'); if ($textTranslated.hasClass('d-none')){ if ($textTranslated.text() == ''){ $.ajax('/ajax.php?u=translate&f=translateComment&a=' + id).done(function(e){ if (e){ $textTranslated.html(e); $text.addClass('d-none'); $textTranslated.removeClass('d-none'); $btn.find('span').first().addClass('d-none'); $btn.find('span').last().removeClass('d-none'); } else { showMessage('Text se nepodařilo přeložit.', 'error'); } }).fail(function(){ showMessage('Text se nepodařilo přeložit.', 'error'); }); } else { $text.addClass('d-none'); $textTranslated.removeClass('d-none'); $btn.find('span').first().addClass('d-none'); $btn.find('span').last().removeClass('d-none'); } } else { $textTranslated.addClass('d-none'); $text.removeClass('d-none'); $btn.find('span').last().addClass('d-none'); $btn.find('span').first().removeClass('d-none'); } } function scrollAndHighlightComment(commentBoxId, noAnimation){ if ($(commentBoxId).length){ let commentEl = $(commentBoxId); $('.comments .highlighted-animated').removeClass('highlighted-animated'); setTimeout(function(){ commentEl.addClass('highlighted-animated'); commentsScroll( commentBoxId, null, noAnimation); }, 10); } } function resetCommentForm($parent) { $('.comment-form-title-insert', $parent).show(); $('.comment-form-title-reply', $parent).hide(); $("[name=parent]", $parent).val(''); $("textarea", $parent).val(''); let widgetId = $parent.attr('id'); let $legend = $(".comment-form legend", $parent); if ($legend.data('text-original')) { $legend.html($legend.data('text-original')); } let $btn = $(".comment-form button.btn-comment-submit", $parent); if ($btn.data('text-original')) { $btn.html($btn.data('text-original')); } if (typeof window['commentFileUploader' + widgetId] !== 'undefined') { window['commentFileUploader' + widgetId].resetFiles(); } } $(function(){ var scrollToComment = false; if (location.hash.indexOf('#form-')>=0){ var hash = location.hash; commentsScroll( hash, null, true ); //remove hash history.replaceState(null, null, ' '); } if (location.hash == '#questions' || location.hash == '#reviews' || location.hash == '#comments'){ var widgetId = location.hash; if (!$(widgetId).length) widgetId = '#questions'; if ($(widgetId).length && !scrollToComment){ if (!window.matchMedia("(min-width: 768px)").matches){ $(widgetId + '-expander').prop('checked', 'checked').trigger('change'); } if ($('.comment-unread', widgetId).length){ } else { commentsScroll(widgetId, null, true); } } } $('.comments').on('click', '.btn-comment-show-insert-popup', function(){ var $parent = $(this).closest('.comments'); resetCommentForm($parent); }); }); $(function(){ $('textarea', '.comments').on('input', function(){ if ($(this).val().length){ $('.comment-form .btn').addClass('mobile-active'); }else{ $('.comment-form .btn').removeClass('mobile-active'); } $(this).removeClass('is-invalid'); }); function setCommentTextareaPlaceholder(){ if (window.matchMedia("(min-width: 768px)").matches){ $('textarea', '.comments').attr('placeholder', $('textarea', '.comments').data('placeholder-desktop')); }else{ $('textarea', '.comments').attr('placeholder', $('textarea', '.comments').data('placeholder-mobile')); } } setCommentTextareaPlaceholder(); $(window).resize(function(){ setCommentTextareaPlaceholder(); }); }); $(function(){ $('.comment-form button[type=submit]').attr('disabled', 'disabled'); $('.comment-form textarea').click(function(){ $('#loginModal').modal('show'); }); }); var loadedComments_questionsWidget = false; function loadComments_questionsWidget(){ } // #TODO function hideForumPosts() { $('.forum_post_hidden').each(function(){ target = $(this).data('target'); forum_post = $(this).parent('.post_tools').siblings('.post_message'); $(this).show().insertAfter(forum_post); forum_post.hide(); forum_post.parent('.post_right').parent('.post_container').addClass('hiddenForumPost'); }); } $(function(){ hideForumPosts(); }); // #TODO function hideForumPost(postId) { el = $('#' + postId); message = el.siblings('.post_message'); el.remove(); message.show(); message.parent('.post_right').parent('.post_container').removeClass('hiddenForumPost'); } function close_what_we_can_do(id) { $('#we_can_do_better_' + id).hide(); return false; } function send_what_we_can_do(id, id_user) { var $el = $('#we_can_do_better_' + id); $el.addClass('show-loading'); var selectedOption = $('input:radio[name=input_we_can_do_input_' + id + ']:checked').val() var text = $('#input_we_can_do_textarea_' + id).val(); $.get('/ajax.php?u=misc&f=userVoteDownComment&a=' + selectedOption + '|' + id_user + '|' + text + '|' + id , function(data){ close_what_we_can_do(id); $el.removeClass('show-loading'); showMessage('Tvoje zpětná vazba byla úspěšně odeslána.'); } ); } $(function() { $('body').on('click', '.user_votes a.user_votes_link', function(e){ if ($(this).hasClass('inactive')) return false; var fn = $(this).data('rel'); var hash = $(this).attr('hash'); var contentId = $(this).parent().attr('contentid'); var contentType = $(this).parent().attr('contenttype'); var contentUserId = $(this).parent().attr('contentuserid'); var parent = $(this).parent().parent(); var voteTop = 0; if($(this).closest(".metadata-line").length>0) { voteTop = 1; } $(this).tooltip('hide'); $.get('/ajax.php?u=misc&f=userContentVotesAjax&a=' + contentId + '|' + contentType + '|' + contentUserId + '|' + fn + '|' + hash + '|0|1', function(data){ if (data.startsWith('ok')) { data = data.substr(2); } $('.user_votes' + contentType + contentId).replaceWith(data); if (contentType === 'article') { if (fn === 'voteDown') { var position = parent.offset(); var topclick = position.top + 15 - parent.closest('.container.position-relative').offset().top; var leftclick = position.left + 20 - parent.closest('.container.position-relative').offset().left; $('#we_can_do_better_' + contentId).css({top: topclick, left: leftclick}); $('#we_can_do_better_' + contentId).show(); } else { $('#we_can_do_better_' + contentId).hide(); } } } ); return false; }); }); var loadedComments_reviewsWidget = false; function loadComments_reviewsWidget(){ } // Comments $(function(){ $('.comment-form, .review-form', '#reviewsWidget').on('submit', function(){ $(this).attr('autocomplete',"off"); // prevent prepopulating fields on backbtn click if (history.state && history.state.popupOpened === 'mobile-expander'){ $('.mobile-expander-content', '#reviewsWidget').addClass('opened'); history.back(); } }); $('select[name=sort], select[name=filter]', '#reviewsWidget').on('change', function() { let inputName = $(this).attr('name'); let sort = $('select[name=sort]', '#reviewsWidget').val(); let filter = $('select[name=filter]', '#reviewsWidget').length ? $('select[name=filter]', '#reviewsWidget ').val() : ''; var url = "/ajax.php?m=komentare&f=loadCommentsWidget&a=bW9kdWw9c2hvcCZleHRlcm5hbElkPTM1NDQ1NyZpdGVtTmFtZT1GRldEK0RSSUZUK1BBQ0UrJTI4NDgrbW0lMjkrMjglMjZxdW90JTNCK3NhZGEra29sJTJDK0RUMjQwKzIlM0ExK0VYUCZjb21tZW50VHlwZT1yZXZpZXcmYXV0aG9yVXNlcklkPTAmd2lkZ2V0SWQ9cmV2aWV3c1dpZGdldCZhbGxvd0luc2VydD0xJmFsbG93UmVwbHk9MSZhZGRpdGlvbmFsRXh0ZXJuYWxJZHMlNUIwJTVEPTM1NDQ1NiZyZXR1cm5Vcmw9aHR0cHMlM0ElMkYlMkZ3d3cubXRiaWtlci5jeiUyRnNob3AlMkZrb2xhLWEtcmFma3klMkZ2eXBsZXRlbmEta29sYSUyRnNpbG5pY25pLWtvbGElMkZmZndkLWRyaWZ0LXBhY2UtNDgtbW0tMjhxdW90LXNhZGEta29sLWR0MjQwLTIxLWV4cC1wMzU0NDU3Lmh0bWwlMjNyZXZpZXdzJnBhcnNlZFVybCU1QnNjaGVtZSU1RD1odHRwcyZwYXJzZWRVcmwlNUJob3N0JTVEPXd3dy5tdGJpa2VyLmN6JnBhcnNlZFVybCU1QnBhdGglNUQ9JTJGc2hvcCUyRmtvbGEtYS1yYWZreSUyRnZ5cGxldGVuYS1rb2xhJTJGc2lsbmljbmkta29sYSUyRmZmd2QtZHJpZnQtcGFjZS00OC1tbS0yOHF1b3Qtc2FkYS1rb2wtZHQyNDAtMjEtZXhwLXAzNTQ0NTcuaHRtbCZwYXJzZWRVcmwlNUJmcmFnbWVudCU1RD1yZXZpZXdzJmluY2x1ZGVDb21tZW50SWQ9MA|" + sort + "|" + filter; if (inputName === 'filter') { if (parseInt(filter) === 3 && !customScoreDone) { loadScoreSettingsModal(); return false; } } $('#reviewsWidget .comments-body-content').addClass('show-loading'); $.ajax({ url: url, success: function(data) { $('#reviewsWidget .comments-body-content').html(data).removeClass('show-loading'); } }); }); }); var commentFormSubmitting = false; $('.comment-form', '#reviewsWidget').unbind('submit'); $('.comment-form', '#reviewsWidget').on('submit', function(e){ e.preventDefault(); if (commentFormSubmitting) return false; var commentFormSubmitting = true; var $form = $(this); var $commentParent; $form.addClass('show-loading'); $('input[name="fotokom[]"]', $form).prop('disabled', true); var formData = new FormData(this); $('.invalid-feedback', $form).remove(); $('.is-invalid', $form).removeClass('is-invalid'); var parentId = $form.find("[name=parent]").val(); parentId = parentId ? parseInt(parentId) : 0; var isReply = true && parentId; if (isReply) { $commentParent = $('#commentBox' + parentId); formData.append('level', $commentParent.parents('.comments-replies').length); } $.ajax({ type: "POST", url: "/ajax.php?m=komentare&f=ajaxSaveForm&a=", data: formData, processData: false, contentType: false, success: function(data) { if (isReply && data) { // return comment html (shop only) if ($commentParent.next('.comments-replies').length){ $commentParent.next('.comments-replies').replaceWith($(data)); } else { $commentParent.after($(data)); } // Remove reward container if ($commentParent.find('.reward-container').length) { $commentParent.find('.reward-container').remove(); } let $toHighlight = $('.to-highlight', '#reviewsWidget'); if ($toHighlight.length) { $toHighlight.removeClass('to-highlight'); scrollAndHighlightComment('#' + $toHighlight.attr('id'), false); } // Remove 'loyalty-reward' from the url setTimeout(function() { if (window.location.hash.includes("?loyalty-reward=1")) { const newHash = window.location.hash.replace("?loyalty-reward=1", ""); history.replaceState(null, "", newHash); } }, 1000); // reset form resetCommentForm($form.closest('.comments')); $('input[name="fotokom[]"]', $form).prop('disabled', false); $form.hide(); $('.comment-form-with-uploader-popup.collapse').collapse('hide'); commentFormSubmitting = false; $form.removeClass('show-loading'); } else { // returns js relocate window.onhashchange = function (e) { e.preventDefault(); window.location.reload(); return false; } $('.mainSite').append(data); // location.reload(); } }, error: function(data){ commentFormSubmitting = false; $form.removeClass('show-loading'); if (data && data.responseJSON && data.responseJSON.formErrors){ $.each(data.responseJSON.formErrors, function(name, error){ $("[name="+name+"]", $form).after('
'+error.join('
')+'
'); $("[name="+name+"]", $form).closest('.form-group').find('input, select, textarea, .dropdown').addClass('is-invalid'); }); } $firstInvalidEl = $(".is-invalid", $form).first(); $firstInvalidEl.focus(); $('input[name="fotokom[]"]', $form).prop('disabled', false); } }); return false; }); function showRating(rating){ if (!rating) { $('.reviews-form-stars i').removeClass('fa-star').addClass('fa-star-empty'); } else { var $currentRating = $('.reviews-form-stars i').eq(rating-1); $currentRating.removeClass('fa-star-empty').addClass('fa-star'); $currentRating.prevAll().removeClass('fa-star-empty').addClass('fa-star'); $currentRating.nextAll().removeClass('fa-star').addClass('fa-star-empty'); } } var reviewSubmitting = false; $(function(){ if (!isMobile){ $('.reviews-form-stars i').on('mouseenter', function(){ var rating = parseInt($('#reviewsForm input[name=rating]').val()); if (rating) return false; showRating($(this).index()+1); }); $('.reviews-form-stars').on('mouseleave', function(){ var rating = parseInt($('#reviewsForm input[name=rating]').val()); showRating(rating); }); } }); function submitReviewForm(fotoFileUploader) { $('#reviewsForm').addClass('show-loading'); reviewSubmitting = true; $('#reviewsForm input[name="fotokom[]"]').prop('disabled', true); var formData = new FormData(document.getElementById("reviewsForm")); $.each(fotoFileUploader.getFiles(),function(i,file){ formData.append('fotokom['+i+']', file); }); $('#reviewsForm .invalid-feedback').remove(); $('#reviewsForm .is-invalid').removeClass('is-invalid'); let showNext = $('#reviewsForm input[name="show_next_review"]').length > 0; $.ajax({ type: "POST", url: "/ajax.php?m=komentare&f=ajaxSaveForm&a=", data: formData, processData: false, contentType: false, success: function(data){ if (showNext && typeof showNextReviewForm !== 'undefined') { reviewSubmitting = false; let prevId = $('#reviewsForm input[name="foreign_id"]').val(); showNextReviewForm(prevId, data); } else { // returns js relocate $('.mainSite').append(data); // location.reload(); } }, error: function(data){ reviewSubmitting = false; $('#reviewsForm').removeClass('show-loading'); if (data && data.responseJSON && data.responseJSON.formErrors){ $.each(data.responseJSON.formErrors, function(name, error){ $("#reviewsForm [name="+name+"]").after('
'+error.join('
')+'
'); $("#reviewsForm [name="+name+"]").closest('.form-group').find('input, select, textarea, .dropdown').addClass('is-invalid'); }); } $firstInvalidEl = $("#reviewsForm .is-invalid").first(); $firstInvalidEl.focus(); } }); } // function check and modal if review is too short function isReviewShort(textareaCheckLength, limit = 20) { var modalOpened = false; var reviewtextLength = $('#reviewsForm textarea[name=text]').val().length; if (reviewtextLength < limit && textareaCheckLength === false) { $('#modalReviewShort').modal('show'); textareaCheckLength = true; modalOpened = true; } return [textareaCheckLength, modalOpened]; } var loadedComments_reviewsWidget = false; function loadComments_reviewsWidget(){ } //gallery carousel multiple items - hack $(function(){ // init arrows $('.gallery-carousel').each(function(){ var itemsPerSlide = 4; if ($(this).data('items-per-slide')) itemsPerSlide = $(this).data('items-per-slide'); if ($('.carousel-item', this).length <= itemsPerSlide){ $('.carousel-control-next', this).addClass('disabled'); } }); $('.gallery-carousel').on('slide.bs.carousel', function (e) { if (!window.matchMedia("(min-width: 768px)").matches) return; // default behaviour on mobile /* CC 2.0 License Iatek LLC 2018 - Attribution required */ var $e = $(e.relatedTarget); var idx = $e.index(); var itemsPerSlide = 4; if ($(this).data('items-per-slide')) itemsPerSlide = $(this).data('items-per-slide'); var totalItems = $('.carousel-item', this).length; if ($(this).data('ended')==true && e.direction=='left'){ return false; } if (e.to===0){ $('.carousel-control-prev', this).addClass('disabled'); }else{ $('.carousel-control-prev', this).removeClass('disabled'); } if (e.to>=totalItems - itemsPerSlide){ $('.carousel-control-next', this).addClass('disabled'); $(this).data('ended', true); }else{ $('.carousel-control-next', this).removeClass('disabled'); $(this).data('ended', false); } }); }); var carouselItemsPerSlide = 4; if (window.matchMedia("(min-width: 768px)").matches){ if ($('#pc-194-carousel .col-sm-6').length) carouselItemsPerSlide = 2; if ($('#pc-194-carousel .col-sm-4').length) carouselItemsPerSlide = 3; } if (window.matchMedia("(min-width: 1024px)").matches){ if ($('#pc-194-carousel .col-md-4').length) carouselItemsPerSlide = 3; if ($('#pc-194-carousel .col-md-3').length) carouselItemsPerSlide = 4; } if (window.matchMedia("(min-width: 1200px)").matches){ if ($('#pc-194-carousel .col-lg-3').length) carouselItemsPerSlide = 4; } $('#pc-194-carousel').data('items-per-slide', carouselItemsPerSlide); function resizeCarouselpc194(){ if (window.matchMedia("(min-width: 768px)").matches){ var maxHeight = 0; var width = 0; $('#pc-194-carousel .carousel-inner').height('auto'); $('#pc-194-carousel .carousel-item').each(function(){ width = Math.max(width, $(this).outerWidth()); if (width === 0) return; var $this = $(this); var prevStyle = $this.attr('style'); if (!$this.is(':visible')){ $this.attr('style','position:absolute; left:-500px; display:block; height: auto; width:' + width + 'px'); } maxHeight = Math.max(maxHeight, $(this).outerHeight()); $this.attr('style', prevStyle ? prevStyle : ''); }); $('#pc-194-carousel .carousel-inner').height(maxHeight); } else { $('#pc-194-carousel .carousel-inner').height('100%'); } } $(function(){ resizeCarouselpc194(); $(window).on('resize', function(){ resizeCarouselpc194(); }); }); var carouselItemsPerSlide = 4; if (window.matchMedia("(min-width: 768px)").matches){ if ($('#recommended-155-carousel .col-sm-6').length) carouselItemsPerSlide = 2; if ($('#recommended-155-carousel .col-sm-4').length) carouselItemsPerSlide = 3; } if (window.matchMedia("(min-width: 1024px)").matches){ if ($('#recommended-155-carousel .col-md-4').length) carouselItemsPerSlide = 3; if ($('#recommended-155-carousel .col-md-3').length) carouselItemsPerSlide = 4; } if (window.matchMedia("(min-width: 1200px)").matches){ if ($('#recommended-155-carousel .col-lg-3').length) carouselItemsPerSlide = 4; } $('#recommended-155-carousel').data('items-per-slide', carouselItemsPerSlide); function resizeCarouselrecommended155(){ if (window.matchMedia("(min-width: 768px)").matches){ var maxHeight = 0; var width = 0; $('#recommended-155-carousel .carousel-inner').height('auto'); $('#recommended-155-carousel .carousel-item').each(function(){ width = Math.max(width, $(this).outerWidth()); if (width === 0) return; var $this = $(this); var prevStyle = $this.attr('style'); if (!$this.is(':visible')){ $this.attr('style','position:absolute; left:-500px; display:block; height: auto; width:' + width + 'px'); } maxHeight = Math.max(maxHeight, $(this).outerHeight()); $this.attr('style', prevStyle ? prevStyle : ''); }); $('#recommended-155-carousel .carousel-inner').height(maxHeight); } else { $('#recommended-155-carousel .carousel-inner').height('100%'); } } $(function(){ resizeCarouselrecommended155(); $(window).on('resize', function(){ resizeCarouselrecommended155(); }); }); var carouselItemsPerSlide = 4; if (window.matchMedia("(min-width: 768px)").matches){ if ($('#recommended-147-carousel .col-sm-6').length) carouselItemsPerSlide = 2; if ($('#recommended-147-carousel .col-sm-4').length) carouselItemsPerSlide = 3; } if (window.matchMedia("(min-width: 1024px)").matches){ if ($('#recommended-147-carousel .col-md-4').length) carouselItemsPerSlide = 3; if ($('#recommended-147-carousel .col-md-3').length) carouselItemsPerSlide = 4; } if (window.matchMedia("(min-width: 1200px)").matches){ if ($('#recommended-147-carousel .col-lg-3').length) carouselItemsPerSlide = 4; } $('#recommended-147-carousel').data('items-per-slide', carouselItemsPerSlide); function resizeCarouselrecommended147(){ if (window.matchMedia("(min-width: 768px)").matches){ var maxHeight = 0; var width = 0; $('#recommended-147-carousel .carousel-inner').height('auto'); $('#recommended-147-carousel .carousel-item').each(function(){ width = Math.max(width, $(this).outerWidth()); if (width === 0) return; var $this = $(this); var prevStyle = $this.attr('style'); if (!$this.is(':visible')){ $this.attr('style','position:absolute; left:-500px; display:block; height: auto; width:' + width + 'px'); } maxHeight = Math.max(maxHeight, $(this).outerHeight()); $this.attr('style', prevStyle ? prevStyle : ''); }); $('#recommended-147-carousel .carousel-inner').height(maxHeight); } else { $('#recommended-147-carousel .carousel-inner').height('100%'); } } $(function(){ resizeCarouselrecommended147(); $(window).on('resize', function(){ resizeCarouselrecommended147(); }); }); var carouselItemsPerSlide = 4; if (window.matchMedia("(min-width: 768px)").matches){ if ($('#recommended-235-carousel .col-sm-6').length) carouselItemsPerSlide = 2; if ($('#recommended-235-carousel .col-sm-4').length) carouselItemsPerSlide = 3; } if (window.matchMedia("(min-width: 1024px)").matches){ if ($('#recommended-235-carousel .col-md-4').length) carouselItemsPerSlide = 3; if ($('#recommended-235-carousel .col-md-3').length) carouselItemsPerSlide = 4; } if (window.matchMedia("(min-width: 1200px)").matches){ if ($('#recommended-235-carousel .col-lg-3').length) carouselItemsPerSlide = 4; } $('#recommended-235-carousel').data('items-per-slide', carouselItemsPerSlide); function resizeCarouselrecommended235(){ if (window.matchMedia("(min-width: 768px)").matches){ var maxHeight = 0; var width = 0; $('#recommended-235-carousel .carousel-inner').height('auto'); $('#recommended-235-carousel .carousel-item').each(function(){ width = Math.max(width, $(this).outerWidth()); if (width === 0) return; var $this = $(this); var prevStyle = $this.attr('style'); if (!$this.is(':visible')){ $this.attr('style','position:absolute; left:-500px; display:block; height: auto; width:' + width + 'px'); } maxHeight = Math.max(maxHeight, $(this).outerHeight()); $this.attr('style', prevStyle ? prevStyle : ''); }); $('#recommended-235-carousel .carousel-inner').height(maxHeight); } else { $('#recommended-235-carousel .carousel-inner').height('100%'); } } $(function(){ resizeCarouselrecommended235(); $(window).on('resize', function(){ resizeCarouselrecommended235(); }); }); var carouselItemsPerSlide = 4; if (window.matchMedia("(min-width: 768px)").matches){ if ($('#recommended-61-carousel .col-sm-6').length) carouselItemsPerSlide = 2; if ($('#recommended-61-carousel .col-sm-4').length) carouselItemsPerSlide = 3; } if (window.matchMedia("(min-width: 1024px)").matches){ if ($('#recommended-61-carousel .col-md-4').length) carouselItemsPerSlide = 3; if ($('#recommended-61-carousel .col-md-3').length) carouselItemsPerSlide = 4; } if (window.matchMedia("(min-width: 1200px)").matches){ if ($('#recommended-61-carousel .col-lg-3').length) carouselItemsPerSlide = 4; } $('#recommended-61-carousel').data('items-per-slide', carouselItemsPerSlide); function resizeCarouselrecommended61(){ if (window.matchMedia("(min-width: 768px)").matches){ var maxHeight = 0; var width = 0; $('#recommended-61-carousel .carousel-inner').height('auto'); $('#recommended-61-carousel .carousel-item').each(function(){ width = Math.max(width, $(this).outerWidth()); if (width === 0) return; var $this = $(this); var prevStyle = $this.attr('style'); if (!$this.is(':visible')){ $this.attr('style','position:absolute; left:-500px; display:block; height: auto; width:' + width + 'px'); } maxHeight = Math.max(maxHeight, $(this).outerHeight()); $this.attr('style', prevStyle ? prevStyle : ''); }); $('#recommended-61-carousel .carousel-inner').height(maxHeight); } else { $('#recommended-61-carousel .carousel-inner').height('100%'); } } $(function(){ resizeCarouselrecommended61(); $(window).on('resize', function(){ resizeCarouselrecommended61(); }); }); function updateRelevantCategoryLink(){ $(".link-relevant-product").attr('href', $(".product-relevant-categories .tab-pane.active .link-relevant-product-mobile").attr('href')); } $(document).ready(function(){ $('.product-relevant-categories a[data-toggle="tab"]').on("shown.bs.tab", function (e) { updateRelevantCategoryLink(); }); updateRelevantCategoryLink(); }); $(document).ready(function () { let similarCategoriesEl = $("#productSimilarCategories"); let similarCategoriesExpandBtn = $(".btn-product-similar-categories-expand"); similarCategoriesEl.on("hide.bs.collapse", function () { similarCategoriesExpandBtn.find('.material-icons').html('add'); similarCategoriesExpandBtn.find('span').html('Zobrazit více kategorií'); }); similarCategoriesEl.on("show.bs.collapse", function () { similarCategoriesExpandBtn.find('.material-icons').html('remove'); similarCategoriesExpandBtn.find('span').html('Zobrazit méně kategorií'); }); }); var productGalleryCarousel; $(document).ready(function(){ productGalleryCarousel = new Swiper('#gallery-carousel', { loop: false, slidesPerView: 1, spaceBetween: 0, pagination: { el: '.shop-detail-images .swiper-pagination', clickable: true, }, navigation: { nextEl: '.shop-detail-images .carousel-control-next', prevEl: '.shop-detail-images .carousel-control-prev', }, breakpoints: { 768: { slidesPerView: 3, spaceBetween: 10, }, 1024: { slidesPerView: 4, spaceBetween: 10, }, }, }); }) $(function(){ let $bpModal = $('#bestPriceNewModal'); $bpModal.on('show.bs.modal', function () { $('.bp-declined-show').hide(); $('.bp-declined-hide').show(); var $selectedOption = $('input[name="option[1]"]:checked'); $bpModal.find('.is-invalid').removeClass('is-invalid'); $bpModal.find('.invalid-feedback').remove(); $bpModal.find('input[name=price]').val(''); $bpModal.find('input[name=url]').val(''); // product with options but no option selected if ($selectedOption.length) { $('#bp-new-options').val($selectedOption.val()); $('#bp-new-options').selectpicker('refresh'); } /*if ($('input[name="option[1]"]').length && !$selectedOption.length) { $('#bp-new-options-wrap').show(); } else { $('#bp-new-options-wrap').hide(); }*/ }); let $bpNewPrice = $('#bp-new-price'); $bpNewPrice[0].addEventListener("paste", function(event) { event.preventDefault(); let paste = (event.clipboardData || window.clipboardData).getData("text"); paste = paste.replace(/[^\d.,]/g, ''); this.value = paste; }); $bpNewPrice.on('keypress', function (e) { var chr = String.fromCharCode(e.which); if ("0123456789.,".indexOf(chr) < 0) { return false; } }); $('#bp-new-form').on('submit', function(e) { e.preventDefault(); var $this = $(this); if ($this.hasClass('show-loading')) { return false; } $this.addClass('show-loading'); $.post('/shop-utils/pricingRequest', $this.serialize(), function(returnData) { showMessage('Děkujeme za zájem o dorovnání ceny, brzy se ozveme', 'success'); $bpModal.modal('hide'); $this.removeClass('show-loading'); $bpModal.find('.is-invalid').removeClass('is-invalid'); $bpModal.find('.invalid-feedback').remove(); }).fail(function(data) { if (data && data.responseJSON && data.responseJSON.formErrors) { $bpModal.find('.is-invalid').removeClass('is-invalid'); $bpModal.find('.invalid-feedback').remove(); $.each(data.responseJSON.formErrors, function(name, error) { if (name === 'not_in_whitelist' || name === 'higher_price' || name === 'wrong_country') { $('.js-price-match-info-exc', $bpModal).hide(); $('#bp-declined .bp-icon-sad').toggle(name !== 'higher_price'); $('#bp-declined .bp-icon-info').toggle(name === 'higher_price'); $('#bp-declined .bp-alert-text').html(error); $('.bp-declined-show').show(); $('.bp-declined-hide').hide(); } else if (name === 'exists'){ showMessage(error, 'error'); $bpModal.modal('hide'); $this.removeClass('show-loading'); $bpModal.find('.is-invalid').removeClass('is-invalid'); $bpModal.find('.invalid-feedback').remove(); } else { $("[name=" + name + "]", $bpModal).addClass('is-invalid').after('
' + error + '
'); } }); } else { statusErrorMsg(data.status); } $this.removeClass('show-loading'); }); return false; }); }) $(function(){ const swiperInfoBoxes = new Swiper('.shop-info-boxes-slider .swiper', { loop: false, slidesPerView: 'auto', spaceBetween: 0, navigation: { nextEl: '.shop-info-boxes-slider .carousel-control-next', prevEl: '.shop-info-boxes-slider .carousel-control-prev', }, breakpoints: { 768: { slidesPerView: 3, spaceBetween: 20, }, 1200: { slidesPerView: 4, spaceBetween: 20, }, }, }); }); var totalPriceForInstallments = 1899; function showCalc() { var downPayment = 0; var productPrice = totalPriceForInstallments * 100; // default kalkulacka rata len su sumou max 4000 eur pre product (HC to ma tam nastavene), inak klakulacka vyhodi chybu pri vyssej sume // avsak dostal som tip od HC, ze ak je cena vyssia, tak hodit rozdiel do akontacie, aby klient spustil kalkulacku a videl predbeznu vysku splatok atd. // s MP sme stanovili max sumu 7000 za produkt, moze sa zmenit, ak bude potrebne if (productPrice > 400000) { downPayment = productPrice - 400000; } let app = document.createElement('hc-calc'); app.callback = processCalcResult; app.apiKey = 'CIjXENKFksYuZby9jRTL'; app.dataCalculatorBaseUrl = 'https://api.homecredit.sk/public/v1/calculator/'; app.productSetCode = 'COCHCONO'; app.price = productPrice; // number in minor units app.downPayment = downPayment; // number in minor units app.fixDownPayment = false; // parameter to decide if enable od disable downpayment app.language = 'sk-SK'; // Language can be "cs-CZ" or "sk-SK" app.isModal = true; // parametr to decide if launch in model or not app.hideHeader = false; // parametr to decide if hide header of hc-calc document.body.appendChild(app); // Where to mount calculator } function processCalcResult(calcResult) { } function showQuatroCalc(){ console.log('https://quatro.vub.sk/kalkulacka/I992?cenaTovaru=' + totalPriceForInstallments); window.open('https://quatro.vub.sk/kalkulacka/I992?cenaTovaru=' + totalPriceForInstallments, '', 'width=685,height=560,scrollbars=1,resizable=1,location=no,menubar=no,toolbar=no, status=1') } var UtilsCheckAvailability = { modal: null, selectedOptionId: null, productOptions: {"866559":"ořech Shimano MicroSpline","866560":"ořech Sram XDR"}, init: function () { this.modal = $('#checkAvailabilityModal'); this.modal.on('show.bs.modal', function () { let modal = $(this); $('.modal-footer, .cha-notif, .cha-check, .cha-form', modal).hide(); $('.cha-intro', modal).show(); $('.show-loading', modal).removeClass('show-loading'); //let $selectedOption = $('#productOptions input[name="option[1]"]:checked'); //this.selectedOptionId = $selectedOption.val(); //$('.ca-option-name').removeClass('sel'); // $('.ca-option-name[data-option-id=' + $selectedOption.val() +']').removeClass('d-none'); }); $('.password-with-toggler i', this.modal).on('click', function (event) { let wrap = $(this).closest('.password-with-toggler'); if ($('input', wrap).attr('type') === 'text') { $('input', wrap).attr('type', 'password'); $('i', wrap).text('visibility'); } else { $('input', wrap).attr('type', 'text'); $('i', wrap).text('visibility_off'); } }); }, show: function (productOptionId) { this.selectedOptionId = productOptionId; this.modal.modal('show'); }, check: function () { $('.cha-intro', this.modal).hide(); $('.cha-check, .cha-form, .modal-footer', this.modal).show(); }, notify: function () { $('.cha-intro', this.modal).hide(); $('.cha-notif, .cha-form, .modal-footer', this.modal).show(); }, /* showRegDetails: function() { $('.cha-reg-banner').hide(); $('.cha-reg-details, .modal-footer').show(); },*/ validateForm: function (register) { $('.is-invalid', this.modal).removeClass('is-invalid'); $('.invalid-feedback', this.modal).remove(); let email = $('#ca-email', this.modal).val(); if (!email.length && !$('#ca-email', this.modal)[0].checkValidity()) { $('#ca-email', this.modal)[0].reportValidity(); return false; } if (register && !$('#ca-password', this.modal)[0].checkValidity()) { $('#ca-password', this.modal)[0].reportValidity(); return false; } if (register && !$('#ca-terms', this.modal)[0].checkValidity()) { $('#ca-terms', this.modal)[0].reportValidity(); return false; } return true; }, doCheck: function (register) { let $form = $('.form-with-loading', this.modal); let utils = this; if ($form.hasClass('show-loading') || !this.validateForm(register)) { return false; } $form.addClass('show-loading'); $.ajax({ url: '/watchdog/watchdog/instant', method: 'post', data: { register: register, user_email: $('#ca-email', this.modal).val(), user_password: $('#ca-password', this.modal).val(), user_name: $('#ca-name', this.modal).val(), product_url: "https://www.mtbiker.cz/shop/kola-a-rafky/vypletena-kola/silnicni-kola/ffwd-drift-pace-48-mm-28quot-sada-kol-dt240-21-exp-p354457.html", product_name: "FFWD DRIFT PACE (48 mm) 28&quot; sada kol, DT240 2:1 EXP, provedení: " + this.productOptions[this.selectedOptionId], }, success: function (returnData) { if (returnData && returnData.msg) { showMessage(returnData.msg, 'success', register ? 5000 : 3000); utils.modal.modal('hide'); } else { showMessage(`Nastala chyba. Zkuste to prosím později!`, 'error'); } $form.removeClass('show-loading'); } }).fail(function (xhr) { if (xhr && xhr.responseJSON && xhr.responseJSON.formErrors) { $.each(xhr.responseJSON.formErrors, function (name, error) { $("[name=" + name + "]", utils.modal).addClass('is-invalid'); $("[name=" + name + "]", utils.modal).after('
' + error.join('
') + '
'); }); } else if (xhr && xhr.responseJSON && xhr.responseJSON.errors) { jsonErrorsMsg(xhr.responseJSON.errors); } else { statusErrorMsg(xhr.status); } $form.removeClass('show-loading'); }); return false; }, doNotify: function (register) { let $form = $('.form-with-loading', this.modal); let utils = this; if ($form.hasClass('show-loading') || !this.validateForm(register)) { return false; } $form.addClass('show-loading'); $.ajax({ url: '/watchdog/watchdog/add', method: 'post', data: { register: register, user_email: $('#ca-email', this.modal).val(), user_password: $('#ca-password', this.modal).val(), user_name: $('#ca-name', this.modal).val(), product_id: '354457', product_option_id: this.selectedOptionId, }, success: function (returnData) { if (returnData && returnData.msg) { showMessage(returnData.msg, 'success', register ? 5000 : 3000); utils.modal.modal('hide'); } else { showMessage(`Nastala chyba. Zkuste to prosím později!`, 'error'); } $form.removeClass('show-loading'); } }).fail(function (xhr) { if (xhr && xhr.responseJSON && xhr.responseJSON.formErrors) { $.each(xhr.responseJSON.formErrors, function (name, error) { $("[name=" + name + "]", utils.modal).addClass('is-invalid'); $("[name=" + name + "]", utils.modal).after('
' + error.join('
') + '
'); }); } else if (xhr && xhr.responseJSON && xhr.responseJSON.errors) { jsonErrorsMsg(xhr.responseJSON.errors); } else { statusErrorMsg(xhr.status); } $form.removeClass('show-loading'); }); return false; } } $(function () { UtilsCheckAvailability.init(); }); $(function() { $('#extendedReturnModal').on('show.bs.modal', function() { if ($('.cart-success-panel').length) { setTimeout(function(){ $('#extendedReturnModal').css('z-index', 9100); $('.modal-backdrop').css('z-index', 9098); }, 5); } }); }) var emailConsentModalActiveEl; var emailConsentModalActiveSection = false; var emailConsentModalAgreed = false; function emailConsentModal(el, section){ var $el = $(el); if ($el.is(':checked') || !$el.is("input")){ // checked checkbox, or button/link emailConsentModalActiveEl = $(el); var $modal = $('#modalEmailConsent'); emailConsentModalActiveSection = section; if (section){ $('[data-section="general"]', $modal).hide(); $('[data-section="newsletter"]', $modal).hide(); $('[data-section="shop"]', $modal).hide(); $('[data-section="sale"]', $modal).hide(); $('[data-section="' + section + '"]', $modal).show(); $('.label-non-univeral').hide(); $('.label-universal').show(); } else { $('.mec-title', $modal).hide(); $('[data-section="general"]', $modal).show(); } emailConsentModalSubOptions(); emailConsentModalRegistrationToggleBtn(); emailConsentModalAgreed = false; $('#modalEmailConsent').modal('show'); } } function emailConsentModalSubOptions(){ $('.sub-options-emails').each(function() { var $subOptions = $(this); if ($subOptions.parent().find('.custom-switch input:checked, .custom-checkbox input:checked').length){ $subOptions.show(); if (!$subOptions.find('input:checked').length){ $subOptions.find('input').first().prop('checked', true); } } else { $subOptions.hide(); $subOptions.find('input').prop('checked', false); } }); } function emailConsentModalOnAgreed(){ var $modal = $('#modalEmailConsent'); emailConsentModalAgreed = true; var sectionWrap = emailConsentModalActiveSection ? '[data-section="' + emailConsentModalActiveSection + '"] ' : ''; var inputs = ''; $(sectionWrap + 'input[type=hidden], input:checked', $modal).each(function(){ var $this = $(this); inputs = inputs + ''; }); emailConsentModalActiveEl.prev('.mec-inputs').remove(); $('' + inputs + '').insertBefore(emailConsentModalActiveEl); $('#modalEmailConsent').modal('hide'); } function emailConsentModalRegistrationToggleBtn() { $modal = $('#modalEmailConsent'); setTimeout(function(){ $('.modal-footer .btn', $modal).prop('disabled', !$('input:checked:visible', $modal).length); }, 200); } $(function() { $('input[name="agreed_emails"]').on('change', function(){ emailConsentModal(this); }); emailConsentModalSubOptions(); $('#mec_user_newsletter_agreed, #user_newsletter_agreed').on('change', emailConsentModalSubOptions ); $('input:radio, input:checkbox','#modalEmailConsent').on('change', function(){ emailConsentModalRegistrationToggleBtn(); }); $('#modalEmailConsent').on('hidden.bs.modal', function (e) { $modal = $(this); if (!emailConsentModalAgreed){ if (emailConsentModalActiveEl.val() === 'weekly'){ $('input[value=monthly]', $modal).prop('checked', false); } else if (emailConsentModalActiveEl.val() === 'monthly'){ $('input[value=weekly]', $modal).prop('checked', false); } else { emailConsentModalActiveEl.prop('checked', false); } emailConsentModalActiveEl.prev('.mec-inputs').remove(); } emailConsentModalActiveSection = false; emailConsentModalSubOptions(); if ($('#registrationModal.modal').hasClass('show')) { setTimeout(function(){ $('body').addClass('modal-open'); // registration modal is still opened }, 20); } }); }); $(function() { $(".js-reject-cookies").attr("role", "button"); $(".js-reject-cookies").click(function(e){ e.preventDefault(); $.ajax({type: "POST",url: "/account/cookie-consent",data: {functional:0,analytical:0,commercial:0} }); $("#biscuitModal").fadeOut(250); return false; }); $(".biscuit-close").click(function(){ $.ajax({type: "POST",url: "/account/cookie-consent",data: {necessary:1,functional:1,analytical:1,commercial:1} }); $("#biscuitModal").fadeOut(250); $(".biscuit-checkboxes .custom-control-input").attr("checked", true); updateGoogleAnalyticsConsent(); updateBingConsent(); sendGoogleAnalyticsPageview(); return false; }); $(".biscuit-settings").click(function(){ $(this).addClass("loading-simple"); $.ajax({type: "POST",url: "/account/cookie-consent",data: {functional:0,analytical:0,commercial:0} }).always(function(){ window.location = "https://www.mtbiker.cz/cookies"; }); }); });