Samsung Members Hub

Possibility starts here

Get exclusive rewards, superfast support and ignite your passion. Become a Samsung Member and #DoWhatYouCant
Samsung Members Hub

Inspiration starts here

Get exclusive rewards, superfast support and ignite your passion. Become a Samsung Member and #DoWhatYouCant
Hiya, N*A*M*E

Let’s get to know your products

Enter your product details below and become a Samsung Member.

Register your product

Tips for easy product registration:

You need to type a minimum of two characters, once you finish typing any matching results will be displayed to you.

This may take a second.

If you are registering a home appliance please start typing the product type, eg. Single door fridge

If you are registering a TV please try typing the TV type, eg. QLED TV

If you are registering a smartphone try typing the model type, eg. S10 or A9

search

    Your selection

    Serial number (or IMEI number for phone)

    Can’t find it?

    Please enter your serial number or IMEI

    Please enter your serial number or IMEI

    If you can't find your serial number:

    If you are registering a smartphone, dial *#06# to get your IMEI in one second

    If you are registering any other product, you can use this guide.

    Become a Samsung Member in moments

    What’s in it for You

    Rewards

    Exclusive rewards

    Get exclusive discounts, join workshops and enter giveaways.

    Register now
    Inspiration

    Endless inspiration

    Ignite your passion with content perfect for you.

    Register now
    Support

    Superfast support

    Get 24/7 support. Chat to experts and get help from the Samsung Members community.

    Register now
    Unlock exclusive rewards
    We love spoiling our Samsung Members. Get discounts, invites to workshops and enter epic giveaways to win the latest tech.
    Discounts
    Get money off top tech.
    Workshops & giveaways
    Learn tips and tricks or enter exclusive competitions.

    Samsung Members and counting

    Ignite your passion
    From secret tablet tips to global fitness challenges, check out content that’s perfect for you.

    Inspiration for storytellers and creators

    Your guide to getting more done

    Learn about the latest TV display technology, get tips to up your gaming skills, and discover how to recreate the cinema experience at home

    For a happy and healthy connected life

    Photography
    Productivity
    Entertainment
    Health
    ARTICLES & REWARDS
    Ignite your passion
    Whether it’s getting snap happy or pumping iron, everyone’s into something. So we’ve got a range of amazing articles and stunning rewards to help you ignite your passion. Just choose from a topic below.
    Photography
    Learn more
    Productivity
    Learn more
    Entertainment
    Learn more
    Health
    Learn more
    Exclusive access behind the scenes
    Enter competitions that give you exclusive access. Check out how the winners of the ‘Show Your Love for Galaxy’ competition took Galaxy Unpacked by storm in February 2020.
    Photography
    Inspiration and rewards for storytellers and creators.
    Photography articles
    Productivity
    Inspiration and offers to help you get more done.
    Productivity articles
    Health
    Inspiration and offers for a happy and healthy connected life.
    Health articles
    Entertainment
    Inspiration and offers to keep your finger on the pulse of the latest tech.
    Entertainment articles
    \n

    ").concat(product.DisplayName, "

    \n
    \n ").concat(product.ModelCode, "\n
    \n ").concat(registeredProductCta, "\n
    "); }); this.productsContainer.html(productsDivs); this.deleteProduct(); MEMBERS_WEB.components.slideUpCategoriesAndProducts.init(); } }, deleteProduct: function deleteProduct() { var deleteProductCta = $('.deleteProductCta'); deleteProductCta.click(function (e) { e.preventDefault(); var id = $(this).data('id'); MEMBERS_WEB.common.apiPost('/api/device/delete?ItemRegistrationId=' + id, JSON.stringify([]), function (data) { MEMBERS_WEB.products.getRegisteredProducts(); }); }); }, searchProducts: function searchProducts() { var timer; var encodedValue; if (MEMBERS_WEB.user.isUserLoggedIn) { var searchInput = $('.search-input'); searchInput.on('keyup ', function (e) { if (e.target.value.length > 0) { // ***** IN LIVE ***** if (e.keyCode !== 38 && e.keyCode !== 40 && e.keyCode !== 13 && e.keyCode !== undefined) { clearTimeout(timer); timer = setTimeout(function () { console.log(e.target.value.length); if (e.target.value.length >= 2) { encodedValue = encodeURIComponent(e.target.value); var apiPath = '/api/profile/products' + "?language=".concat(e.target.value, "&locale=").concat(MEMBERS_WEB.locale); if ('/api/profile/products' === '/api/profile/productmembers') { apiPath = '/api/profile/products' + "?searchterm=".concat(encodedValue, "&locale=").concat(MEMBERS_WEB.locale); } // if ('SEUK' === "SEBN") { // apiPath = '/api/profile/products' + `?searchterm=${encodedValue}&locale=${MEMBERS_WEB.locale}` // } MEMBERS_WEB.common.apiGet(apiPath, function (response) { MEMBERS_WEB.products.populateSearchResults(response, e.target.value); }); } }, 500); } else { MEMBERS_WEB.products.scrollResults(e); } // ***** END LIVE ***** // ***** IN LOCALHOST ***** // if ( // e.keyCode !== 38 && // e.keyCode !== 40 && // e.keyCode !== 13 && // e.keyCode !== undefined // ) { // const searchResults = $('.search-results'); // $(searchResults).addClass('active'); // MEMBERS_WEB.products.populateSearchResults(MEMBERS_WEB.fakeProducts, e.target.value); // } else { // console.log('scroll'); // MEMBERS_WEB.products.scrollResults(e); // } // ***** END IN LOCALHOST ***** } else { $('.search-results').html(''); $('.search-results').removeClass('active'); } }); } $('body').click(function (e) { if ($(e.target).closest('.search-result').length === 0 && $(e.target).closest('.search-input').length === 0) { $('.search-results').html('').removeClass('active'); MEMBERS_WEB.products.scrollIndex = -1; } }); }, populateSearchResults: function populateSearchResults(apiResponse, inputValue) { var searchResults = $('.search-results'); $(searchResults).addClass('active'); var html = apiResponse.filter(function (product) { var regex = new RegExp(inputValue, 'gi'); return product.MarketingName.match(regex); }).map(function (model) { var regex = new RegExp(inputValue, 'gi'); var modelName = model.MarketingName.replace(regex, "".concat(inputValue, "")); var modelSku = model.MarketingName.replace(regex, "".concat(inputValue, "")); if ('/api/profile/products' === "/api/profile/productmembers") { // SEBN return "\n
  • \n ").concat(modelName, "\n
  • \n "); } else { return "\n
  • \n ").concat(modelName, "\n
  • \n "); } // if ('SEUK' === "SEBN") { // return ` //
  • // ${modelName} //
  • // `; // } else if ('SEUK' === "SENA") { // return ` //
  • // ${modelName} //
  • // `; // } else if ('SEUK' === "SEPOL") { // return ` //
  • // ${modelName} //
  • // `; // } }).join(''); $(searchResults).html(html); $('.search-result').on('click', function () { // searchProductsAPI = siteEnv variable, inserted and defined through gulp if ('/api/profile/products' === "/api/profile/products") { $('.model-details').data('code', $(this).data('model')); $('.model-details').data('image', $(this).data('image')); $('.model-details').data('name', $(this).data('name')); } else { $('.model-details').data('image', $(this).data('image')); $('.model-details').data('name', $(this).data('name')); $('.model-details').data('model', $(this).data('model')); $('.model-details').data('productid', $(this).data('productid')); $('.model-details').data('shortcode', $(this).data('shortcode')); } // if ('SEUK' === "SEBN") { // // FOR SEBN // $('.model-details').data('image', $(this).data('image')); // $('.model-details').data('name', $(this).data('name')); // $('.model-details').data('model', $(this).data('model')); // $('.model-details').data('productid', $(this).data('productid')); // $('.model-details').data('shortcode', $(this).data('shortcode')); // } else if ('SEUK' === "SENA") { // // FOR SENA // $('.model-details').data('code', $(this).data('model')); // $('.model-details').data('image', $(this).data('image')); // $('.model-details').data('name', $(this).data('name')); // } else if ('SEUK' === "SEPOL") { // // FOR SEPOL // $('.model-details').data('code', $(this).data('model')); // $('.model-details').data('image', $(this).data('image')); // $('.model-details').data('name', $(this).data('name')); // } $('.search-input').val(''); $('.search-results').html('').removeClass('active'); MEMBERS_WEB.products.addProductFromSearchInput(); }); }, scrollResults: function scrollResults(e) { e.preventDefault(); var activeLi; console.log('e.keyCode', e.keyCode); switch (e.keyCode) { case 40: this.scrollIndex++; if (this.scrollIndex >= $('.search-result').length - 1) { this.scrollIndex = $('.search-result').length - 1; } this.setActiveLi(); activeLi = $('.search-result.active'); break; case 38: this.scrollIndex--; if (this.scrollIndex <= -1) { this.scrollIndex = -1; } this.setActiveLi(); activeLi = $('.search-result.active'); break; case 13: this.setActiveLi(); activeLi = $('.search-result.active'); // break if no active item if (!activeLi.length) { break; } $('.model-details').data('image', $(activeLi).data('image')); $('.model-details').data('name', $(activeLi).data('name')); $('.model-details').data('model', $(activeLi).data('model')); $('.model-details').data('productid', $(activeLi).data('productid')); $('.model-details').data('shortcode', $(activeLi).data('shortcode')); $('.search-input').val(''); $('.search-results').html('').removeClass('active'); this.scrollIndex = -1; this.addProductFromSearchInput(); break; default: this.scrollIndex = -1; } var searchResults = $('.search-results'); var activeResult = $('.search-result.active'); if (activeResult.length) { var activeResultTopPos = activeResult.offset().top; var activeResultBottomPos = activeResultTopPos + activeResult.outerHeight(); var searchResultsBottom = searchResults.offset().top + searchResults.outerHeight(); if (activeResultBottomPos > searchResults.offset().top + searchResults.outerHeight()) { $(searchResults).animate({ scrollTop: activeResult.outerHeight() + searchResults.scrollTop() }); } else if (activeResultTopPos < searchResults.offset().top) { $(searchResults).animate({ scrollTop: searchResults.scrollTop() - activeResult.outerHeight() }); } } }, setActiveLi: function setActiveLi() { var index = this.scrollIndex; // ignore if no active index if (index < 0) { return; } var resultsItems = $('.search-result'); resultsItems.removeClass('active'); $(resultsItems[index]).addClass('active'); console.log('index: ', index); console.log('activeLi: ', resultsItems[index]); }, addProductFromSearchInput: function addProductFromSearchInput() { var BuyDate = null; var SerialNumber = null; var RetailerInfo = null; var selectedProduct = $('.selected-product'); var selectedProductImage = $('.selected-product img'); var selectedProductName = $('.selected-product__model-name'); $(selectedProductImage).attr('src', ''); var newImgSrc = $('.model-details').data('image') === null ? '//images.samsung.com/is/image/samsung/assets/uk/members/images/placeholder.jpg?$ORIGIN_JPG$' : $('.model-details').data('image'); var newName = $('.model-details').data('name'); $('.search-input').val(''); $('.search-results').html('').removeClass('active'); $('.search-button').removeClass('faded'); $(selectedProductImage).attr('src', newImgSrc); $(selectedProductName).html(newName); selectedProduct.addClass('active'); $('.img-loader').show(); $(selectedProductImage).load(function () { $('.img-loader').hide(); }); $('html, body').animate({ scrollTop: $('.search-container').offset().top }, 500); $('.search-input').val(''); $('.search-results').html('').removeClass('active'); // only when no link is present $('.imei-link[href="#"]').click(function (e) { e.preventDefault(); console.log; $('.instructions-section').addClass('opened'); $('html, body').animate({ scrollTop: $('.imei-input').offset().top - 50 }, 500); }); $('.search-results').html('').removeClass('active'); // removes selected device $('.remove-device').click(MEMBERS_WEB.products.removeSelectedProduct); $('.complete-registration').click(MEMBERS_WEB.products.completeRegistration); }, removeSelectedProduct: function removeSelectedProduct() { // just removing the active class to prevent progress of registering, // product data will be repopulated after change $('.selected-product').removeClass('active'); // scroll to search box $('html, body').animate({ scrollTop: $('.search-container').offset().top - 200 }, 500); }, completeRegistration: function completeRegistration() { var productID; var modelCode; var shortCode; var serialNumber; var retailerInfo; var formData; var buyDate; // siteAreaCode = siteEnv variable, inserted and defined through gulp if ('/api/profile/addproduct' === '/api/profile/productmemberitemregistration') { // FOR SEBN locales productID = $('.model-details').data('productid'); modelCode = $('.model-details').data('model'); shortCode = $('.model-details').data('shortcode'); serialNumber = $('.imei-input__field').val(); retailerInfo = null; formData = { Locale: MEMBERS_WEB.locale, ProductID: productID, ModelCode: modelCode, ShortModelCode: shortCode, SerialNumber: serialNumber }; } else { productID = $('.model-details').data('code'); buyDate = null; serialNumber = $('.imei-input__field').val(); retailerInfo = null; formData = { ProductID: productID, BuyDate: buyDate, SerialNumber: serialNumber, RetailerInfo: retailerInfo }; } // if ('SEUK' === "SEBN") { // // FOR SEBN locales // productID = $('.model-details').data('productid'); // modelCode = $('.model-details').data('model'); // shortCode = $('.model-details').data('shortcode'); // serialNumber = $('.imei-input__field').val(); // retailerInfo = null; // formData = { // Locale: MEMBERS_WEB.locale, // ProductID: productID, // ModelCode: modelCode, // ShortModelCode: shortCode, // SerialNumber: serialNumber, // }; // // siteAreaCode = siteEnv variable, inserted and defined through gulp // } else if ('SEUK' === "SENA") { // //FOR SENA locales // productID = $('.model-details').data('code'); // buyDate = null; // serialNumber = $('.imei-input__field').val(); // retailerInfo = null; // formData = { // ProductID: productID, // BuyDate: buyDate, // SerialNumber: serialNumber, // RetailerInfo: retailerInfo, // }; // } else if ('SEUK' === "SEPOL") { // //FOR SEPOL locales // productID = $('.model-details').data('code'); // buyDate = null; // serialNumber = $('.imei-input__field').val(); // retailerInfo = null; // formData = { // ProductID: productID, // BuyDate: buyDate, // SerialNumber: serialNumber, // RetailerInfo: retailerInfo, // }; // } console.log('formData', formData); $('.imei-error-msg').removeClass('active'); if ('/api/profile/addproduct' === '/api/profile/productmemberitemregistration') { if (serialNumber.length === 0) { $('.imei-error-msg.errorMessage1').addClass('active'); } else { MEMBERS_WEB.common.apiPost('/api/profile/addproduct', // siteEnvVariable JSON.stringify(formData), function (data) { if (data == 'true') { window.location.href = "/".concat(MEMBERS_WEB.site, "/members/products"); // window.location.href = `/${MEMBERS_WEB.site}/members`; return; } else {} }); } } else { if (serialNumber.length === 0) { $('.imei-error-msg.errorMessage1').addClass('active'); } else if (!(14 <= serialNumber.length && serialNumber.length <= 17)) { $('.imei-error-msg.errorMessage2').addClass('active'); } else { MEMBERS_WEB.common.apiPost('/api/profile/addproduct', // siteEnvVariable JSON.stringify(formData), function (data) { if (data == 'true') { window.location.href = "/".concat(MEMBERS_WEB.site, "/members/products"); // window.location.href = `/${MEMBERS_WEB.site}/members`; return; } else {} }); } } }, scrollToRegister: function scrollToRegister() { $('.scrollToRegister').click(function (e) { e.preventDefault(); $('html, body').animate({ scrollTop: $('.find-device').offset().top - 50 }, 500); }); if (window.location.hash === '#find-device') { setTimeout(function () { $('html, body').animate({ scrollTop: $('#find-device').offset().top }, 1000); }, 500); } }, init: function init() { this.getRegisteredProducts(); this.searchProducts(); this.scrollToRegister(); } }, components: { navigation: { elem: $('.members-nav-wrapper'), toggle: $('.nav-toggle'), setLoginClass: function setLoginClass() { if (MEMBERS_WEB.user.loggedIn) { this.elem.addClass('logged-in'); } else { this.elem.addClass('logged-out'); } }, setStickyNav: function setStickyNav() { var elem = MEMBERS_WEB.components.navigation.elem; var samsungHeader = $('.gnb__bar')[0]; var navHandler = function navHandler(entries) { if (!entries[0].isIntersecting) { $(elem).addClass('sticky'); } else { $(elem).removeClass('sticky'); } }; var navObserver = new IntersectionObserver(navHandler); navObserver.observe(samsungHeader); }, setActiveNav: function setActiveNav() { var pageRegEx = new RegExp(/\/members\/(\w+)\//g); var pageArr = pageRegEx.exec(window.location.pathname); if (pageArr) { $('.members-nav-inner').addClass('has-active'); var currentPage = pageArr[1]; // Check if the nav links contain the current page and add the active class. $('.members-nav-inner a').each(function () { var href = $(this).attr('href'); if (href.indexOf(currentPage) > -1) { $(this).addClass('active'); } }); } else { $('.members-nav-inner a').each(function () { var href = $(this).attr('href'); if (href === "/".concat(MEMBERS_WEB.site, "/members")) { $(this).addClass('active'); } }); } }, toggleMobileMenu: function toggleMobileMenu() { var _this2 = this; this.toggle.on('click', function () { _this2.elem.toggleClass('nav-opened'); }); }, animateThreeSteps: function animateThreeSteps() { var progressBars = Array.prototype.slice.call(document.querySelectorAll('.progress-bar'), 0); var options = { root: null, rootMargin: '0px 0px -10px 0px', threshold: 0 }; var progressHandler = function progressHandler(entries) { entries.forEach(function (entry) { if (!entry.isIntersecting) { return; } else { entry.target.classList.add('visible'); } }); }; var progressObserver = new IntersectionObserver(progressHandler, options); if (progressBars) { progressBars.forEach(function (progressBar) { progressObserver.observe(progressBar); }); } }, init: function init() { this.setLoginClass(); this.setActiveNav(); //this.setStickyNav(); this.toggleMobileMenu(); this.animateThreeSteps(); } }, counter: { elem: $('.members-counter'), anim: $('.members-counter .counter-animation'), config: window.localConfig.counter, createCounter: function createCounter() { var counter = new Odometer({ el: this.anim[0], value: 0, format: this.config.format, theme: 'minimal', duration: 3000 }); return counter; }, events: function events(counter) { var counterTitle = $('.counter-title')[0]; var handler = function handler(entries) { if (!entries[0].isIntersecting) { return; } counter.update(MEMBERS_WEB.components.counter.config.number); }; var observer = new IntersectionObserver(handler); observer.observe(counterTitle); }, init: function init() { if (this.config.enabled) { if (this.elem && typeof Odometer === 'function') { var counter = this.createCounter(); this.events(counter); } else { this.elem.hide(); } } } }, homepageVideo: { poster: $('.js-videoPoster'), initializeIframe: function initializeIframe() { this.poster.click(function (e) { e.preventDefault(); var $wrapper = $(this).closest('.js-videoWrapper'); var $iframe = $wrapper.find('.js-videoIframe'); var src = $iframe.data('src'); $wrapper.addClass('videoWrapperActive'); $iframe.attr('src', src); }); }, init: function init() { this.initializeIframe(); } }, homeCarousels: { initialSlider: $('.ignite-item-slider'), initialSliderBottomNav: $('.ignite-thumb-slider'), registeredProductsSlider: $('.ignite-item-slider-registered'), initializeCarousels: function initializeCarousels() { this.initialSlider.on('init', function (event, slick, currentSlide) { var nrCurrentSlide = slick.currentSlide + 1, // din cauza ca e array si incepe de la 0 totalSlidesPerPage = nrCurrentSlide + 3; // daca ai 5 thumb-uri pe pagina pui + 4 $('.controls').html(nrCurrentSlide + ' - ' + totalSlidesPerPage + ' of ' + slick.slideCount); }); this.initialSliderBottomNav.slick({ slidesToShow: 4, slidesToScroll: 1, asNavFor: '.ignite-item-slider', dots: false, arrows: false, focusOnSelect: true, infinite: false }); this.initialSlider.slick({ slidesToShow: 1, slidesToScroll: 1, centerMode: true, centerPadding: '20%', arrows: false, asNavFor: '.ignite-thumb-slider', infinite: true, autoplay: true, autoplaySpeed: 1500, focusOnSelect: true }); this.registeredProductsSlider.slick({ lazyLoad: 'ondemand', slidesToShow: 3, infinite: true, centerMode: true, centerPadding: '0px', slidesToScroll: 1, dots: false, focusOnSelect: true, prevArrow: false, nextArrow: false, speed: 1000, mobileFirst: true, variableWidth: true, responsive: [{ breakpoint: 769, settings: 'unslick' }] }); var current = 0; // current slider dupa refresh $('.ignite-thumb-slider .slick-slide:not(.slick-cloned)').eq(current).addClass('slick-current'); $('.ignite-item-slider').on('afterChange', function (event, slick, currentSlide, nextSlide) { current = currentSlide; $('.ignite-thumb-slider .slick-slide').removeClass('slick-current'); $('.ignite-thumb-slider .slick-slide:not(.slick-cloned)').eq(current).addClass('slick-current'); var nrCurrentSlide = slick.currentSlide + 1; // din cauza ca e array si incepe de la 0 var totalSlidesPerPage = nrCurrentSlide + 3; // daca ai 5 thumb-uri pe pagina pui + 4 }); }, init: function init() { this.initializeCarousels(); } }, homeBanner: { init: function init() { setTimeout(function () { if ($('.phase-two:visible').length > 0) { $('.members-banner').hide(); } else { $('.members-banner').show(); } }, 1000); } }, prependToAemComponents: { init: function init() { //prepend article headers to appropriate component article sections $('.articleheader').each(function () { var current = $(this).attr('data-articlehead'); $(this).prependTo('#' + current); }); // members banner to move AFTER all components on the page if ($('.cheil-static').find('.members-banner').length) { var articles = $('.articleheader'); if (articles.length) { var lastSection = $(articles[articles.length - 1]).parents('.cm-g-columns.section'); } $('.members-banner').insertAfter(lastSection); } } }, fadeInComponents: { init: function init() { var contentToFade = Array.prototype.slice.call(document.querySelectorAll('.toFade'), 0); var fadeInObserver = new IntersectionObserver(function (entries, observer) { entries.forEach(function (entry) { console.log('Entry:', entry); // Log each entry observed if (!entry.isIntersecting) { return; } entry.target.classList.add('fadeIn'); observer.unobserve(entry.target); }); }); contentToFade.forEach(function (content) { fadeInObserver.observe(content); }); } }, slideUpCategoriesAndProducts: { init: function init() { if (window.location.pathname === "/".concat(MEMBERS_WEB.site, "/support/") || window.location.pathname === "/".concat(MEMBERS_WEB.site, "/products/")) { var containerToSlide = $('.toSlide')[0]; var slideHandler = function slideHandler(entries) { if (!entries[0].isIntersecting) { return; } entries[0].target.classList.add('slideUp'); }; var observer = new IntersectionObserver(slideHandler); observer.observe(containerToSlide); } } }, zoomInComponents: { init: function init() { var contentToZoom = Array.prototype.slice.call(document.querySelectorAll('.toZoom'), 0); var zoomObserver = new IntersectionObserver(function (entries) { entries.forEach(function (entry) { if (!entry.isIntersecting) { return; } entry.target.classList.add('zoom'); }); }); contentToZoom.forEach(function (content) { zoomObserver.observe(content); }); } }, scrollIgniteCards: { init: function init() { $('.ignite__card').click(function () { var target = $(this).data('sendto'); $('html, body').animate({ scrollTop: $("#".concat(target)).offset().top }, 500); }); } }, addOpenInNewTabIcon: { init: function init() { if ($('.kv__content.registered-only .round-button').hasClass('s-ico-new-window')) { $('.kv__content.registered-only .round-button').css('padding-right', '3rem'); } } }, init: function init() { this.navigation.init(); this.counter.init(); this.prependToAemComponents.init(); this.homeCarousels.init(); this.homepageVideo.init(); this.homeBanner.init(); this.fadeInComponents.init(); this.zoomInComponents.init(); this.scrollIgniteCards.init(); this.slideUpCategoriesAndProducts.init(); this.addOpenInNewTabIcon.init(); } }, support: { changeVideoSource: function changeVideoSource() { if (window.location.pathname === "/".concat(MEMBERS_WEB.site, "/members/support/")) { if ($('.sam-video')) { var samVideo = $('.sam-video'); $(window).on('load resize', function () { if ($(window).width() > 768) { samVideo.get(0).pause(); samVideo.html(""); samVideo.get(0).load(); samVideo.get(0).play(); } else { samVideo.get(0).pause(); samVideo.html(''); samVideo.get(0).load(); samVideo.get(0).play(); } }); } } }, toggleSupportSections: function toggleSupportSections() { $('.open-section').click(function () { var sectionClass = $(this).data('open'); $(".".concat(sectionClass)).toggle(); if ($(".".concat(sectionClass)).is(':visible')) { $(this).html(supportButtonSeeLess).removeClass('section-closed').addClass('section-opened'); } else { $(this).html(supportButtonSeeMore).removeClass('section-opened').addClass('section-closed'); } }); }, init: function init() { this.changeVideoSource(); this.toggleSupportSections(); } }, init: function init() { this.common.redirect(); this.common.setLocale(); this.common.detectIE(); this.user.init(); this.products.init(); this.components.init(); this.support.init(); } }; if ($('.code-component').length) { if (window.addEventListener) { window.addEventListener('DOMContentLoaded', MEMBERS_WEB.init(), false); } else if (window.attachEvent) { window.attachEvent('onload', function () { MEMBERS_WEB.init(); }); } } });

    Marketing Preferences

    Let us know if you would like to receive information on the latest offering by Samsung. Based on your preferences we can focus our communication to you on these areas.

    Preferences

    In particular, my preferences are:

    Product Registration

    *Mandatory field Find your model code. Find your serial number.

    Product Edit

    *Mandatory field Find your model code. Find your serial number.

    Are you sure you want to remove this product?

    Please note - this will remove any information stored in your Samsung Members web account about this product.

    Product successfully registered!

    Product Edited Sucessfully!

    Product Deleted Sucessfully!

    Register your product

    WHERE CAN I FIND MY PRODUCTNAME? Register Product

    Category

    Product Subtype

    Model

    Selected

    SELECT MODEL
    Register Product
    "); if (window.location.hostname == "www.samsung.com") { var workflowStage = "//www"; } else { var workflowStage = "//qaweb"; } main.productsApiGet(workflowStage + ".samsung.com/aemapi/support/ds.do/front/support/modelInfoList?requestSiteCode=uk&requestIaCode=" + iacode + "&requestTellSomeUseYn=&requestWcmsUser=&requestSortType=H&requestListCnt=13&requestPage=" + page + "&requestSearchKeyWord=", function (data, xhr) { var mainCategoriesArr = []; if (data && Object.keys(data).length > 0) { for (var i = 0; i < Object.keys(data.response.resultData.productInfo.productList).length; i++) { var item = {}; item.modelCode = data.response.resultData.productInfo.productList[i].modelCode; item.modelName = data.response.resultData.productInfo.productList[i].displayName; item.modelImage = data.response.resultData.productInfo.productList[i].modelImageUrl; mainCategoriesArr.push(item); } } else { samsungmembers.common.main.doLog("ERROR PARSING DATA!"); var item = {}; item.label = samsungmembers.common.main.copy.noresultsfound; item.value = -1; mainCategoriesArr.push(item); } html += ""; container.html(html); }); }; // Top Categories var getPickerCategories = function (iacode, renderElement) { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.getPickerCategories XXXXX'); var renderDiv = renderElement; var html = ""; renderElement.parent().prepend("
    Now Loading
    "); if (window.location.hostname == "www.samsung.com") { var workflowStage = "//www"; } else { var workflowStage = "//qaweb"; } main.productsApiGet(workflowStage + ".samsung.com/aemapi/support/ds.do/front/support/categorySearch?requestSiteCode=uk&requestOutType=D&requestIaCode=" + iacode + "&requestCtgType=", function (data) { var mainCategoriesArr = []; for (var i = 0; i < Object.keys(data.response.resultData.responseData.iaList).length; i++) { var item = {}; item.iaDisplayNm = data.response.resultData.responseData.iaList[i].iaDisplayNm; item.iaCode = data.response.resultData.responseData.iaList[i].iaCode; item.iaOmni = data.response.resultData.responseData.iaList[i].iaEngNm; mainCategoriesArr.push(item); } // THERE SHOULD BE APPEND html += "
    "; html += ""; html += "
    "; renderDiv.html(html); }); }; var emptyFinderResult = function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.emptyFinderResult XXXXX'); if (!(productFinderResult.hasClass("empty"))) { productFinderResult.addClass("empty"); productFinderRender.html(""); productFinderResult.find("img").attr("src", "//qa-cdn.samsung.com/etc/designs/smg/global/imgs/support-new/img-no-product.png"); } }; // -- Events -- // Main Category $mainCategories.on("click", function (e) { e.preventDefault(); $(this).parents(".mp-categories__list").find(".mp-categories__list-element").removeClass("category--active"); $(this).parent().addClass("category--active"); categoryFinderRender.html(''); subCategoryFinderRender.html(''); productFinderRender.html(''); emptyFinderResult(); var mainIacode = $(this).data('iacode'); getPickerCategories(mainIacode, categoryFinderRender); // main.ajaxLoader(categoryFinderRender); }); // Categories categoryFinder.on("click", ".category-finder__item a", function (e) { e.preventDefault(); $(this).parents(".category-finder").find(".category-finder__item").removeClass("category--active"); $(this).parent().addClass("category--active"); subCategoryFinderRender.html(''); productFinderRender.html(''); emptyFinderResult(); var iacode = $(this).data('iacode'); getPickerCategories(iacode, subCategoryFinderRender); // main.ajaxLoader(subCategoryFinderRender); }); // Sub-Categories subCategoryFinder.on("click", ".category-finder__item a", function (e) { e.preventDefault(); $(this).parents(".sub-category-finder").find(".category-finder__item").removeClass("category--active"); $(this).parent().addClass("category--active"); emptyFinderResult(); pageNumber = 1; html = ""; var mainIacode = $(this).data('iacode'); // main.ajaxLoader(productFinderRender); getPickerProducts(pageNumber, mainIacode, productFinderRender); }); // Products list productFinder.on("click", ".category-finder__item a", function (e) { e.preventDefault(); $(this).parents(".product-finder").find(".category-finder__item").removeClass("category--active"); $(this).parent().addClass("category--active"); var productImage = $(".product-finder__result img"); var productName = $(".modelPicker__model-name"); var productCode = $(".modelPicker__model-code"); var modelData = $(this).parent().find("input[name='modelData']"); var finderHTML = ""; productFinderResult.removeClass("empty"); if (modelData.data("image") == null || modelData.data("image") == "null" || modelData.data("image") == "") { productImage.attr('src', '//qa-cdn.samsung.com/etc/designs/smg/global/imgs/support-new/img-no-product.png'); } else { productImage.attr('src', modelData.data("image")); } productName.html(modelData.data("name")).addClass('bold'); productCode.html('(' + modelData.data("code") + ')'); }); productFinderRender.on("scroll", function () { var ms_ie = false; var ua = window.navigator.userAgent; var old_ie = ua.indexOf('MSIE '); var new_ie = ua.indexOf('Trident/'); if ((old_ie > -1) || (new_ie > -1)) { ms_ie = true; } if (ms_ie) { var scrollableAreaOffet = ($(this)[0].scrollHeight - $(this).innerHeight()) - 50; if ($(this).scrollTop() > scrollableAreaOffet && $(this).find("li").length >= 1) { pageNumber += 1; samsungmembers.common.main.doLog('end reached. \n Current Page Number: ' + pageNumber); var mainIacode = $(".sub-category-finder").find(".category-finder__item.category--active a").data("iacode"); // main.ajaxLoader(productFinderRender); getPickerProducts(pageNumber, mainIacode, productFinderRender); } } else { if ($(this).scrollTop() === ($(this)[0].scrollHeight - $(this).innerHeight()) && $(this).find("li").length >= 1) { pageNumber += 1; samsungmembers.common.main.doLog('end reached. \n Current Page Number: ' + pageNumber); var mainIacode = $(".sub-category-finder").find(".category-finder__item.category--active a").data("iacode"); // main.ajaxLoader(productFinderRender); getPickerProducts(pageNumber, mainIacode, productFinderRender); } } }); // Result box productFinderResult.on("click", ".members-button", function (e) { e.preventDefault(); var formContainer = $('#registerPopupNew #newProductForm'); var formInput = $('input[name="Product"]'); var hiddenID = $('input[name="ProductID"]'); var hiddenModelCode = $('input[name="ModelCode"]'); var currentModelCode = $(this).parent().find('.modelPicker__model-code').text().slice(1, -1); var registerButton = $(".lity-container #registerPopupNew").find(".saveNewProductCta"); samsungmembers.common.main.apiGet("/api/profile/products?language=" + currentModelCode + "&locale=" + samsungmembers.common.main.copy.locale, function (data) { samsungmembers.common.main.doLog(data[0].Id); formInput.val(currentModelCode + ' , ' + data[0].MarketingName); hiddenID.val(data[0].Id); hiddenModelCode.val(currentModelCode); registerButton.removeClass("not-active"); }); }); }, doLoadAllProducts: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.doLoadAllProducts XXXXX'); $("input[name=Product]") // don't navigate away from the field on tab when selecting an item .on("keydown", function (event) { if (event.keyCode === $.ui.keyCode.TAB && $(this).autocomplete("instance").menu.active) { event.preventDefault(); } }) .autocomplete({ minLength: 3, source: function (request, response) { if (!samsungmembers.common.main.isUserLoggedOut()) { main.resetProduct(); main.resetErrors(); main.getProducts(request, response); } }, create: function () { $(this).data('ui-autocomplete')._renderItem = function (ul, item) { if (item.value == -1) { return $('
  • ') .append('' + item.label + '') .appendTo(ul); } else { var imgHtml = ''; if (item.icon) { imgHtml = ''; } return $('
  • ') .append(imgHtml + item.value) .appendTo(ul); } }; }, focus: function () { // prevent value inserted on focus return false; }, select: function (event, ui) { if (ui.item.value != -1) { var terms = this.value.split(/,\s*/); // remove the current input terms.pop(); // add the selected item terms.push(ui.item.value); // add placeholder to get the comma-and-space at the end terms.push(""); this.value = terms.join(""); $("input[name=ProductID]").val(main.allProducts[ui.item.key].Id); $("input[name=ModelCode]").val(main.allProducts[ui.item.key].ModelCode); samsungmembers.common.main.doLog(main.allProducts[ui.item.key].Id); $('#registerPopupNew .saveNewProductCta').removeClass("not-active"); return false; } else { return false; } } }); }, getProducts: function (request, response) { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.getProducts XXXXX'); // delegate back to autocomplete, but extract the last term var term = encodeURIComponent(request.term.split(/,\s*/).pop()); samsungmembers.common.main.apiGet("/api/profile/products?language=" + term + "&locale=" + samsungmembers.common.main.copy.locale, function (data) { main.allProducts = data; var resProducts = []; if (data && data.length > 0) { for (var i = 0; i < data.length; i++) { var item = {}; item.value = data[i].ModelCode + " " + data[i].MarketingName + " " + data[i].Country; item.key = i; item.icon = data[i].ProductImage; resProducts.push(item); } } else { var item = {}; item.label = samsungmembers.common.main.copy.noresultsfound; item.value = -1; resProducts.push(item); } response(resProducts); }); }, doLoadProducts: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.doLoadProducts XXXXX'); samsungmembers.common.main.apiGet("/api/profile/getregisteredproducts?membersregistrations=true", function (data) { samsungmembers.common.main.doLog('products', data); 5 main.products = data; main.doDisplayProducts(); main.initAccountSlick(); }); }, doDisplayProducts: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.doDisplayProducts XXXXX'); if (main.products) { var html = ''; var heroMessageString; var productsLength = main.products.length; if (main.products.length == 0) { $('.my-products').hide(); } else { html += '
    '; html += '

    ' + samsungmembers.common.main.copy.myproducts + ' ('; html += productsLength + ')'; html += '

    '; html += ''; html += '

    ' + samsungmembers.common.main.copy.addyourproducts + '

    '; html += '

    ' + samsungmembers.common.main.copy.addproductsDescription + '

    '; html += '' + samsungmembers.common.main.copy.registernewproduct + ''; $('.my-products').html(html); $('.my-products').show(); } } }, // Cheil Poland version of Product Display function doDisplayProductsNew: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.doDisplayProductsNew XXXXX'); if (main.products) { var html = ''; var heroMessageString; var productsLength = main.products.length; if (productsLength == 0) { heroMessageString = samsungmembers.common.main.copy.noproductsregistered; html += '
    '; html += '
    '; html += '
    '; html += '

     

    '; html += '
    '; html += '
    '; html += '

    ' + samsungmembers.common.main.copy.noproductsregistered + '

    '; html += '
    '; html += ''; html += '
    '; html += '

    '; html += '
    '; html += '
    '; html += '
    '; } else { heroMessageString = samsungmembers.common.main.copy.youhaveproductsregistered; html += '
    '; html += '
    '; html += '
    '; html += '

    ' + samsungmembers.common.main.copy.youhave + ' ' + main.products.length; if (main.products.length > 1) { html += ' ' + samsungmembers.common.main.copy.products + ':

    '; } else { html += ' ' + samsungmembers.common.main.copy.product + ':'; } html += '
    '; html += '
    '; html += '

    ' + samsungmembers.common.main.copy.tableTitleModel + '

    '; html += '
    '; // html += '
    '; // html += '

    '+samsungmembers.common.main.copy.tableTitleCategory+'

    '; // html += '
    '; html += ''; html += '
    '; for (var i = 0; i < main.products.length; i++) { if (i == 2) { html += ''; } } html += '
    '; // display show more products if you have more than 3 items if (productsLength >= 3) { html += ''; } // $('#products').hide(); } if (productsLength == 1) { heroMessageString = heroMessageString.replace('{NUMBER}', productsLength); heroMessageString = heroMessageString.replace('{PRODUCTS}', samsungmembers.common.main.copy.product); } else if (productsLength > 1) { heroMessageString = heroMessageString.replace('{NUMBER}', productsLength); heroMessageString = heroMessageString.replace('{PRODUCTS}', samsungmembers.common.main.copy.products); } $('#registeredProductsNumOutput').html(heroMessageString); $('#registeredProductsNumOutput').removeClass('hidden'); $('#products').html(html); } }, doDeleteProduct: function (id) { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.doDeleteProduct XXXXX'); main.productIdToDelete = id; samsungmembers.common.main.lightbox = lity('#deleteProductHolder'); }, doDeleteProductYes: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.doDeleteProductYes XXXXX'); samsungmembers.common.main.apiPost("/api/device/delete?ItemRegistrationId=" + main.productIdToDelete, JSON.stringify([]), function (data) { samsungmembers.common.main.doLog('doDeleteProductYes', data); main.doLoadProducts(); samsungmembers.common.main.lightbox.close(); samsungmembers.common.main.lightbox = lity('#successDelete'); $("#successDelete").parents(".lity-container").find(".lity-close").css("display", "none"); setTimeout(function () { samsungmembers.common.main.lightbox.close(); }, 2000); }) }, nullIfEmpty: function (value) { return value == "" ? null : value; }, emptyRegisterInputs: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.emptyRegisterInputs XXXXX'); var inputs = $("input[name='ProductID'], input[name='ModelCode'], input[name='Product']"); var array = Array.prototype.slice.call(inputs); var registerButton = $(".saveNewProductCta").addClass("not-active"); array.forEach(function (i) { i.value = ''; }); }, newRegisterPopUp: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.newRegisterPopUp XXXXX'); if (samsungmembers.common.main.isUserLoggedIn()) { var loggedIn = $(".par.parsys"); var registerPopUp = $("#registerPopupNew"); $(".par.parsys").on("click", ".newProductCta", function (e) { e.preventDefault(); e.stopPropagation(); samsungmembers.common.main.lightbox = lity(registerPopUp); main.emptyRegisterInputs(); }); $("#RegisterIcons").on("click", ".s-btn-encased", function (e) { e.preventDefault(); e.stopPropagation(); samsungmembers.common.main.lightbox = lity(registerPopUp); main.emptyRegisterInputs(); }); } }, doNewProduct: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.doNewProduct XXXXX'); // main.validForm('#newProductForm', main.addProduct); main.addProduct(); }, addProduct: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.addProduct XXXXX'); var BuyDate = main.nullIfEmpty($("#newProductForm input[name=BuyDate]").val()); var SerialNumber = main.nullIfEmpty($("#newProductForm input[name=SerialNumber]").val()); var RetailerInfo = main.nullIfEmpty($("#newProductForm input[name=RetailerInfo]").val()); var formData = { "ProductID": parseInt($("#newProductForm input[name=ProductID]").val()), //"ProductID":parseInt($("#newProductForm select[name=ProductID]").val()), "BuyDate": BuyDate, "SerialNumber": SerialNumber, "RetailerInfo": RetailerInfo }; samsungmembers.common.main.doLog(formData.productID) samsungmembers.common.main.doLog(formData); samsungmembers.common.main.apiPost("/api/profile/addproduct", JSON.stringify(formData), function (data) { samsungmembers.common.main.doLog('doNewProduct', data); if (data == "true") { samsungmembers.common.main.doLog("data true"); samsungmembers.common.main.lightbox.close(); samsungmembers.common.main.lightbox = lity('#successRegister'); $("#successRegister").parents(".lity-container").find(".lity-close").css("display", "none"); setTimeout(function () { samsungmembers.common.main.lightbox.close(); }, 2000); samsungmembers.common.main.doLog('newProductHolder close'); main.doLoadProducts(); $(".saveNewProductCta").css("pointer-events", "auto"); } else { samsungmembers.common.main.doLog("data false"); $('#newProductForm #registrationError.error-message').text(samsungmembers.common.main.copy.productalreadyregistered); $("#newProductForm input[name=SerialNumber]").addClass('has-error'); } /** Remove the button from active state **/ $('.saveNewProductCta').removeClass('not-active'); }) }, doEditProduct: function (index) { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.editProduct XXXXX'); var product = main.products[index]; var BuyDate = product.BuyDate; if (BuyDate != null) { BuyDate = BuyDate.split(' ')[0]; BuyDate = new Date(Date.parse(BuyDate)).format("dd/MM/yyyy"); } $("#updateProductForm input[name=ModelRegistrationId]").val(product.ModelRegistrationId); $("#updateProductForm input[name=ProductID]").val(product.ProductID); $("#updateProductForm input[name=ModelCode]").val(product.ModelCode); $("#updateProductForm input[name=Product]").val(product.ModelCode + " " + product.DisplayName); $("#updateProductForm input[name=BuyDate]").val(BuyDate); $("#updateProductForm input[name=SerialNumber]").val(product.SerialNumber); $("#updateProductForm input[name=RetailerInfo]").val(product.RetailerInfo); samsungmembers.common.main.doLog('editProductHolder open'); samsungmembers.common.main.lightbox = lity('#editProductHolder'); $(document).on('focus', "#BuyDateEdit", function () { $(this).attr("id", "BuyDateE"); $(this).datepicker($.datepicker.regional["uk"]); $(this).datepicker({ dateFormat: 'dd/mm/yy', maxDate: '0' }); }); }, doUpdateProduct: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.doUpdateProduct XXXXX'); main.validForm('#updateProductForm', main.updateProduct); }, updateProduct: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.updateProduct XXXXX'); var ModelRegistrationId = main.nullIfEmpty($("#updateProductForm input[name=ModelRegistrationId]").val()); var BuyDate = main.nullIfEmpty($("#updateProductForm input[name=BuyDate]").val()); var SerialNumber = main.nullIfEmpty($("#updateProductForm input[name=SerialNumber]").val()); var RetailerInfo = main.nullIfEmpty($("#updateProductForm input[name=RetailerInfo]").val()); var formData = { "ModelRegistrationId": ModelRegistrationId, "ProductID": parseInt($("#updateProductForm input[name=ProductID]").val()), "BuyDate": BuyDate, "SerialNumber": SerialNumber, "RetailerInfo": RetailerInfo }; samsungmembers.common.main.apiPost("/api/profile/updateproduct", JSON.stringify(formData), function (data) { samsungmembers.common.main.doLog('doUpdateProduct', data); if (data == "true") { samsungmembers.common.main.lightbox.close(); samsungmembers.common.main.lightbox = lity('#successEdit'); $("#successEdit").parents(".lity-container").find(".lity-close").css("display", "none"); setTimeout(function () { samsungmembers.common.main.lightbox.close(); }, 2000); samsungmembers.common.main.doLog('editProductHolder close'); main.doLoadProducts(); } else { $('#updateProductForm #registrationError.error-message').text(samsungmembers.common.main.copy.productalreadyregistered); $("#updateProductForm input[name=SerialNumber]").addClass('has-error'); } }) }, isNormalInteger: function (str) { var n = Math.floor(Number(str)); return String(n) === str && n >= 0; }, isAlphaNumeric: function (str) { var letters = /^[a-zA-Z0-9]+$/; return letters.test(str); }, isValidSerialNumber: function (form, callback) { var serialNumber = $(form + " input[name=SerialNumber]").val(); var modelCode = $(form + " input[name=ModelCode]").val(); if (main.isAlphaNumeric(serialNumber) && serialNumber.length > 0 && serialNumber.length <= 16 && modelCode.length > 0) { samsungmembers.common.main.apiXMLPost("/api/profile/CheckSerial?companycode=" + samsungmembers.common.main.copy.companycode + "&modelcode=" + modelCode + "&serialnumber=" + serialNumber, null, function (data) { var xmlString; //IE if (window.ActiveXObject) { xmlString = data.xml; } // code for Mozilla, Firefox, Opera, etc. else { xmlString = (new XMLSerializer()).serializeToString(data); } var xmlDoc = $.parseXML(xmlString); var $xmlserial = $(xmlDoc); if ($xmlserial.find("YOM") && $xmlserial.find("YOM").text() !== "0000-00-00" && $xmlserial.find("YOM").text().length > 5) { // TODO translation samsungmembers.common.main.doLog('valid serial number'); callback(true); } else { callback(false); } }); } else { callback(false); } }, isValidProduct: function (form) { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.isValidProduct XXXXX'); var product = $(form + " input[name=Product]").val(); var productID = $(form + " input[name=ProductID]").val(); if (product.length <= 3) { $(form + " input[name=ProductID]").val(''); main.resetProduct(); productID = ''; } if (productID && main.isNormalInteger(productID)) { main.resetErrors(); return true; } else { $(form + ' #registrationError.error-message').text(samsungmembers.common.main.copy.productnotfound); $(form + " input[name=Product]").addClass('has-error'); /** Remove the button from active state **/ $('.saveNewProductCta').removeClass('not-active'); return false; } }, resetErrors: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.resetErrors XXXXX'); $('#registrationError.error-message').text(''); $("input[name=Product]").removeClass('has-error'); $("input[name=SerialNumber]").removeClass('has-error'); }, resetProduct: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.resetProduct XXXXX'); $("input[name=ProductID]").val(''); $("input[name=ModelCode]").val(''); $('#registerPopupNew .saveNewProductCta').addClass("not-active"); }, validForm: function (form, callback) { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.validForm XXXXX'); /** Validating the product before validating the serial number **/ if (main.isValidProduct(form)) { var serialNumber = $(form + " input[name=SerialNumber]").val(); /** Validating the serial number only if it exists **/ if (serialNumber) { var isValid = main.isValidSerialNumber(form, function (isValid) { samsungmembers.common.main.doLog(isValid); if (isValid) { main.resetErrors(); callback(); } else { $(form + " #registrationError.error-message").text(samsungmembers.common.main.copy.invalidserialnumber); $(form + " input[name=SerialNumber]").addClass('has-error'); /** Remove the button from active state **/ $('.saveNewProductCta').removeClass('not-active'); } }); } else { main.resetErrors(); callback(); } } }, initAccountSlick: function () { samsungmembers.common.main.doLog('XXXXX cheillondon.products.main.initAccountSlick XXXXX'); if (!$('.slick-wrapper-my-account').length || $('.slick-wrapper-my-account').hasClass('slick-initialized')) return false; $('.slick-wrapper-my-account').slick({ slidesToShow: 1, slidesToScroll: 1, infinite: true, arrows: true, dots: true, mobileFirst: true, responsive: [{ breakpoint: 1024, settings: { slidesToShow: 2, slidesToScroll: 2, infinite: true, dots: true } }, { breakpoint: 600, settings: { slidesToShow: 2, slidesToScroll: 2 } }, { breakpoint: 480, settings: { slidesToShow: 1, slidesToScroll: 1 } } ] }); } }; return { main: main }; })(); samsungmembers.common = (function () { 'use strict'; var main = { TAG: 'apitest', apiUrl: ($(location).attr('hostname') == 'www.samsung.com') ? 'https://api.my-samsung.com' : 'https://stg-api.my-samsung.com', //apiUrl: 'https://api.my-samsung.com', appId: 'cheilmys0481956', secret: 'cheilmysamsung117hf9763jy7', countryCode: 'uk', // TODO translation copy: { "loading": "loading...", "areyousure": "Are you sure?", "optin": "Yes, please send me information on Samsung’s latest offering", "selectproduct": "Select Product", "yes": "Yes", "no": "No", "locale": "en-GB", "cc": "uk", "interest": "interest", "interests": "interests", "productregistrationtext": "You\'ve only partially registered this product complete your registration to fully benefit from MySamsung.", "edit": "Edit", "delete": "Delete", "noresultsfound": "No results Found", "productnotfound": "Your product can't be found", "invalidserialnumber": "Your serial number isn't recognised", "productalreadyregistered": "Your product is already registered", "companycode": "C430", "serviceid": "k39n1m2p1y", "learnmore": "Learn more", "readmore": "Read more", "myProductsSectionTitle": "Products", "selected": "selected", "selectedmodel": "selected model", "model": 'model', "productsubtype": "Product Subtype", "mobiletablet": "Mobile & Tablet", "tvaudio": "TV & Audio", "appliances": "Household Appliances", "pcoffice": "PC & Office", "cameracamcorder": "Camera & Camcorder", "memorystorage": "Memory & Storage", "product": "product", "products": "products", "myproducts": "My products", "preference": "active marketing preference", "preferences": "active marketing preferences", "noproductsregistered": "You have 0 products registered.", // DO NOT REPLACE {TEXT} with translation "youhaveproductsregistered": "You have {NUMBER} {PRODUCTS} registered.", "ownershippreferences": "You have let us know that you have saved {COUNT} ownership preferences In your account. You can change this at any time.", // ---- "registernewproduct": "Register new product", "addyourproducts": "Add your products", "addproductsDescription": "Get the latest information, updates and exclusive personal offers by registering your Samsung product now. And it only takes a moment.", "promotionstart": "Promotion starts on", "promotionend": "Promotion ends on", "youhave": "You have", "tableTitleModel": "Model", "tableTitleCategory": "Category", "viewallproducts": "View all Products", "hideallproducts": "Hide all Products" }, copyInterests: [{ iconPath: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/icons-marketing/camera.png?$ORIGIN_PNG$', copy: 'Tablets', copyHtml: 'Tablets' }, { iconPath: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/icons-marketing/home_appliances.png?$ORIGIN_PNG$', copy: 'Home Appliances', copyHtml: 'Home Appliances' }, { iconPath: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/icons-marketing/mobile.png?$ORIGIN_PNG$', copy: 'Mobile', copyHtml: 'Mobile' }, { iconPath: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/icons-marketing/robots.png?$ORIGIN_PNG$', copy: 'Robots', copyHtml: 'Robots' }, { iconPath: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/icons-marketing/television.png?$ORIGIN_PNG$', copy: 'Television', copyHtml: 'Television' }, { iconPath: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/icons-marketing/wearables.png?$ORIGIN_PNG$', copy: 'Wearables', copyHtml: 'Wearables' } ], hlSectionsData: [ // SECTION NEWS { categoryId: 'news', displayName: 'News & Tips', categoryViewAllText: 'View all News', categoryViewAllUrl: '//www.samsung.com/uk/discover', hlIsTextBlack: true, hlIsBtnWhite: false, hlTitle: 'Graffiti triumphs over classics. What will you display on The Frame?', hlSubtitle: '', // hlCategory: 'News', hlUrl: '//www.samsung.com/uk/discover/news/the-frame-art-of-the-nation/', hlUrlText: 'Learn more', hlBg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/art-of-the-nation-a-v1.jpg?$ORIGIN_JPG$', entries: [{ title: 'Graffiti triumphs over classics. What will you display on The Frame?', ctaText: 'Learn more', isTextBlack: true, isBtnWhite: true, // category: 'News', hideTabletDesktop: true, url: '//www.samsung.com/uk/discover/news/the-frame-art-of-the-nation/', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/01.jpg?$ORIGIN_JPG$' }, { title: 'Rethink what’s possible with the Galaxy S8,
    Gear 360 and VR', ctaText: 'Learn more', // category: 'News', url: '//www.samsung.com/uk/discover/news/21st-century-shakespeare/', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/02.jpg?$ORIGIN_JPG$' }, { title: 'Keeping your phone safe
    and secure', ctaText: 'Learn more', isBtnWhite: true, // category: 'Tips', url: '//www.samsung.com/uk/discover/mobile/smartphone-security-keeping-your-phone-safe', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/001.jpg?$ORIGIN_JPG$' }, { title: 'Do What You Can\'t - Samsung Techonology', ctaText: 'Learn more', isBtnWhite: true, // category: 'News', url: '//www.samsung.com/uk/discover/news/do-what-you-cant-with-galaxy-s8-and-vr/', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/03.jpg?$ORIGIN_JPG$' }, { title: 'Save battery life
    on Galaxy S7 & S7 edge', ctaText: 'Learn more', isTextBlack: true, isBtnWhite: true, // category: 'Tips', url: '//www.samsung.com/uk/discover/mobile/how-to-maximise-battery-life-on-galaxy-s7-and-s7-edge', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/002.jpg?$ORIGIN_JPG$' }, { title: 'Do What You Can\'t - Samsung Techonology', ctaText: 'Learn more', isBtnWhite: true, // category: 'News', url: '//www.samsung.com/uk/discover/news/do-what-you-cant-samsung-technology', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/04.jpg?$ORIGIN_JPG$' }, { title: 'Turn your home into
    a Smart home', ctaText: 'Learn more', isTextBlack: true, isBtnWhite: false, // category: 'Tips', url: '//www.samsung.com/uk/discover/tv/turn-your-home-into-a-smart-home', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/003.jpg?$ORIGIN_JPG$' }, { title: 'How Smart Are We As A Nation?', ctaText: 'Learn more', isBtnWhite: true, // category: 'News', url: '//www.samsung.com/uk/discover/news/how-smart-are-we-as-a-nation', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/05.jpg?$ORIGIN_JPG$' }, { title: '10 Things you will notice
    on a 4K UHD TV', ctaText: 'Learn more', // category: 'Tips', url: '//www.samsung.com/uk/discover/tv/10-things-you-will-notice-on-a-4k-uhd-tv', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/004.jpg?$ORIGIN_JPG$' }, { title: 'Find Your Signature
    with Samsung NX1', ctaText: 'Learn more', isBtnWhite: true, // category: 'Tips', url: '//www.samsung.com/uk/discover/camera/find-your-signature-with-samsung-nx1', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/005.jpg?$ORIGIN_JPG$' } ] }, // SECTION BENEFITS { categoryId: 'benefits', displayName: 'Benefits', categoryViewAllText: 'View all benefits', categoryViewAllUrl: '//www.samsung.com/uk/offer/', hlTitle: 'Get in Gear', hlIsBtnWhite: false, hlIsTextBlack: true, hlSubtitle: 'Buy a Samsung Gear Sport, Gear Fit2 Pro or Gear IconX and claim a 3 month gym pass.
    Valid from Jan 01. 2018 to Mar 29. 2018', hlUrl: '//www.samsung.com/uk/offer/gear-gymgroup/', hlUrlText: 'Learn more', hlBg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/11.jpg?$ORIGIN_JPG$', entries: [{ title: 'Get in Gear', ctaText: 'Learn more', hideTabletDesktop: true, isTextBlack: true, url: '//www.samsung.com/uk/offer/gear-gymgroup/', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/11m.jpg?$ORIGIN_JPG$' }, { title: 'New year, new tech', ctaText: 'Learn more', isTextBlack: true, showO2Logo: false, category: '', url: '//www.samsung.com/uk/offer/wirelesscharger/', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/12.jpg?$ORIGIN_JPG$' }, { title: 'Claim 6 months of complimentary ad-free music from Deezer Premium+', ctaText: 'Learn more', isTextBlack: false, category: '', url: '//www.samsung.com/uk/offer/deezer0', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/13.jpg?$ORIGIN_JPG$' }, { title: 'Try your TV for  100 days', ctaText: 'Learn more', isBtnWhite: true, isTextBlack: false, category: '', url: '//www.samsung.com/uk/offer/try-your-tv-for-100-days', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/14.jpg?$ORIGIN_JPG$' }, { title: '11 Year Warranty on WW8800 QuickDrive™ Washing Machines', ctaText: 'Learn more', isTextBlack: true, category: '', url: '//www.samsung.com/uk/offer/11yearwarranty', bg: '//images.samsung.com/is/image/samsung/p5/uk/membersweb/15.jpg?$ORIGIN_JPG$' } ] } ], // common functions ... doLog: function (msg, o) { var debugParam = main.getParam('debug'); //var debugParam = true; msg = main.TAG + ' - ' + msg; if (debugParam) { if (o) { console.log(msg, o); } else { console.log(msg); } } }, getParam: function (param) { var pageURL = window.location.search.substring(1); var URLVariables = pageURL.split('&'); // main.doLog('Query string values:'); for (var i = 0; i < URLVariables.length; i++) { var queryString = URLVariables[i].split('='); // main.doLog('Key: ' + queryString[0] + ', Value: ' + queryString[1]); if (queryString[0] == param) { return queryString[1]; } } }, apiPost: function (url, postData, callback) { main.doLog('main.apiPost'); main.doLog('main apiurl is: ' + main.apiUrl); main.doLog('apipost url is: ' + main.apiUrl + url); $.ajax({ type: "POST", url: main.apiUrl + url, crossDomain: true, dataType: 'json', contentType: "application/json", data: postData, xhrFields: { withCredentials: true }, headers: { "Accept": 'application/json, text/plain, */*', "Authorization": 'Basic ' + btoa(main.appId + ':' + main.secret), "appId": main.appId }, success: function (data, textStatus, xhr) { main.doLog('apiPost SUCCESS'); if (xhr.status == 200 && textStatus == 'success' && data != 'undefined' && data != 'Token is not valid') { main.doLog('apiPost 200'); callback(data); } else { //$('.s-mymenu .logoutBtn').trigger('click'); window.location.href = main.apiUrl + '/members/logoff?site=' + main.countryCode; main.doLog('apiPost: Api request fails'); main.doLog('url', url); main.doLog('method', 'Post'); } }, error: function (xhr, resp, text) { main.doLog('apiPost ERROR'); console.log(xhr, resp, text); } }) }, apiXMLPost: function (url, postData, callback) { $.ajax({ type: "POST", url: main.apiUrl + url, crossDomain: true, dataType: 'xml', contentType: "application/json", data: postData, xhrFields: { withCredentials: true }, headers: { "Accept": 'application/json, text/plain, */*', "Authorization": 'Basic ' + btoa(main.appId + ':' + main.secret), "appId": main.appId }, success: function (data, textStatus, xhr) { if (xhr.status == 200 && textStatus == 'success' && data != 'undefined' && data != 'Token is not valid') { callback(data); } else { //$('.s-mymenu .logoutBtn').trigger('click'); window.location.href = main.apiUrl + '/members/logoff?site=' + main.countryCode; main.doLog('apiXMLPost: Api request fails'); main.doLog('url', url); main.doLog('method', 'Xmlpost'); } }, error: function (xhr, resp, text) { console.log(xhr, resp, text); } }) }, apiGet: function (url, callback) { $.ajax({ type: "GET", url: main.apiUrl + url, xhrFields: { withCredentials: true }, crossDomain: true, headers: { "Authorization": 'Basic ' + btoa(main.appId + ':' + main.secret), "appId": main.appId }, success: function (data, textStatus, xhr) { if (xhr.status == 200 && textStatus == 'success' && data != 'undefined' && data != 'Token is not valid') { callback(data); } else { //$('.s-mymenu .logoutBtn').trigger('click'); window.location.href = main.apiUrl + '/members/logoff?site=' + main.countryCode; main.doLog('apiGet: Api request fails'); main.doLog('url', url); main.doLog('method', 'Get'); } }, error: function (xhr, resp, text) { console.log(xhr, resp, text); } }); }, checkForJumpTo: function () { main.doLog("samsungmembers.common.checkForJumpTo"); //?jumpto=support var jumpToParam = gup.getParam("jumpto"); var jumpToID = ''; main.doLog(jumpToParam); if (jumpToParam != undefined && jumpToParam != '') { if (samsungmembers.common.main.isUserLoggedIn()) { if (jumpToParam == 'support') { jumpToID = '#support'; } if (jumpToParam == 'benefits') { jumpToID = '#whyRegister'; } //SCROLLING if ($('.slick-wrapper-my-account').length) { if ($('.slick-wrapper-my-account').hasClass('slick-initialized')) { main.scrollToSection(jumpToID); } else { setTimeout(function () { main.checkForJumpTo(); }, 100); } } else { setTimeout(function () { main.scrollToSection(jumpToID); }, 300); } } else { jumpToID = '#articles-not-logged-in'; setTimeout(function () { main.scrollToSection(jumpToID); }, 300); } } }, scrollTo: function (elem) { main.doLog("samsungmembers.common.scrollTo", elem); var navheight = $('nav.cl-sticky-navigation-text').outerHeight(); if( $(elem).length) { var divOffset = $(elem).position().top; var scrollTop = divOffset - navheight; setTimeout(function () { $('html, body').animate({ scrollTop: scrollTop }, 500, function () {}); }, 500); } }, isUserLoggedIn: function () { if (window.location.protocol == "http:") { var newLocation = window.location.href.replace("http", "https"); window.location = newLocation; } var loginParam = gup.getParam("login"); main.doLog("LoginParam", loginParam); var stateParam = gup.getParam("state"); main.doLog("StateParam", stateParam); var userLoggedInStoredInCookie = $.cookies.get("samsung-user-loggedin"); main.doLog("window.location.hostname: ", window.location.hostname); //return (loginParam == "true") ? true : false; /* restricting the request in AEM */ /* Important don't remove this if you remove you can find a loop in AEM it won't allow you to edit the code next time */ if (window.location.hostname == 'www.samsung.com' || window.location.hostname == 'qaweb.samsung.com') { main.doLog("isUserLoggedIn STEP 1"); //if ( !$('html').hasClass('aem-AuthorLayer-Edit') || $('html').hasClass('aem-AuthorLayer-Preview') ) { /* if (loginParam == "true" && $.cookies.get("emailId")) { return true; } else if ($.cookies.get("emailId")) { window.location.href = main.apiUrl+'/members/login?site=' + main.countryCode; } else { return false; } */ if ((stateParam !== "loggedoff") && (loginParam === "true" || userLoggedInStoredInCookie === true)) { main.doLog('USER IS LOGGED IN'); if (userLoggedInStoredInCookie !== true) { // in case of being on member page after login for first time $.cookies.set("samsung-user-loggedin", true, { expires: 1 }); main.doLog('samsung-user-loggedin cookie is set'); } return true; } else { main.doLog('USER IS LOGGED OUT'); if (stateParam === "loggedoff") { $.cookies.del('samsung-user-loggedin'); main.doLog('samsung-user-loggedin cookie is erased'); } return false; } } main.doLog("isUserLoggedIn STEP 2"); //return $.cookies.get("emailId") ? true : false; }, isUserLoggedOut: function () { if (main.isUserLoggedIn()) { return false; } else { if (window.location.protocol == "http:") { var newLocation = window.location.href.replace("http", "https"); window.location = newLocation; } return true; } }, doInitStatus: function () { if (main.isUserLoggedIn()) { // add class to show logout button $('.members-holder').removeClass('loggedOut').addClass('loggedIn'); // experimental don't break please $('.par.parsys').eq(1).removeClass('usrLoggedOut'); // add class to show nav buttons $(".gb-gnb__sub").removeClass('loggedOut').addClass('loggedIn'); $(".gb-gnb__utility").find("li.s-login").hide(); $(".gb-gnb__utility").find("li.s-mymenu").show(); } else { // add class to show login button $('.members-holder').removeClass('loggedIn').addClass('loggedOut'); // experimental don't break please $('.par.parsys').eq(1).addClass('usrLoggedOut'); // add class to hide nav buttons $(".gb-gnb__sub").removeClass('loggedIn').addClass('loggedOut'); $(".gb-gnb__utility").find("li.s-login").show(); $(".gb-gnb__utility").find("li.s-mymenu").hide(); } }, doInitClickEvents: function () { main.doLog("doInitClickEvents"); if (samsungmembers.common.main.isUserLoggedIn()) { $('#menu-item-support').on('click', function (e) { e.preventDefault(); main.scrollToSection('#support'); }); $('#menu-item-benefits').on('click', function (e) { e.preventDefault(); main.scrollToSection('#whyRegister'); }); } }, scrollToSection: function (elem) { main.doLog("scrollToSection: " + elem); var vis = $(elem).css('display'); if (vis === 'block') { main.scrollTo($(elem)); } else { setTimeout(function () { main.scrollToSection(elem); }, 100); } }, // ... common functions init: function () { main.doLog('XXXXX samsungmembers.common.main.init XXXXX'); main.doInitStatus(); main.doInitClickEvents(); main.checkForJumpTo(); } }; var gup = { init: function () {}, getParam: function (param) { var pageURL = window.location.search.substring(1); if (pageURL != "") { var URLVariables = pageURL.split('&'); for (var i = 0; i < URLVariables.length; i++) { var queryString = URLVariables[i].split('='); if (queryString[0] == param) { return queryString[1]; } } } else { return ""; } } }; return { main: main, gup: gup }; })(); cheillondon.samsungmembers.main.init(); });