.variation-label:hover,.variation-label.variation-label--selected,.ProductList-breadcrumb a.Label:hover,.ProductDetail-breadcrumb a.Label:hover{color:#050505}.nav-bg-color,.nav-bg-color .NavigationBar-nestedList .NavigationBar-nestedList-dropdown,.nav-bg-color.sidr,.cart-primary-bg-color:not(:empty),.primary-bg-color-tag,.primary-bg-title-color:before,.primary-hover-bg-color li:hover,.cart-chkt-btn,.cart-chkt-btn:hover,.pagination li.active a:after,.pagination li a:hover:after,.pagination li a:active:after,.pagination li a:focus:after,.addon-promotions-container .addon-item-chkbox input:checked+span,#Footer .container:last-child .item:after,.custom-dropdown .custom-dropdown-option:hover,#shopline-copyright{background:#050505}.btn-color-primary,.member-profile-save,.mobile-verification-btn,.session-varify-code-btn,.MemberCenter .product-review-block .btn-primary,.quick-cart-cancel{background:#050505 !important}.member-price-tag,.modal-confirm .modal-footer .btn-confirm,.btn-cart-fixed:after{background-color:#050505}.variation-label:hover,.variation-label.variation-label--selected,.cart-chkt-btn,.addon-promotions-container .addon-promotion-item-wrapper .addon-selected,.addon-promotions-container .addon-item-chkbox input:checked+span,.modal-confirm .modal-footer .btn-confirm,.variant-image.selected .image-container,.btn-cart-fixed{border-color:#050505}.btn-color-primary,.member-profile-save,.mobile-verification-btn,.session-varify-code-btn,.MemberCenter .product-review-block .btn-primary{border-color:#050505 !important}.Product-promotions,.Util-cssToggle ~ .Util-cssToggleLabel{border-left-color:#050505}.customer-review-bar-color{background-color:rgba(43,56,100,0.3) !important}.facebook-quick-signup-success-page .title{color:#050505}.facebook-quick-signup-success-page .btn-facebook-redirect{background-color:#050505}.facebook-quick-signup-success-page .btn-facebook-redirect:hover{background-color:#050505;color:#fff;opacity:0.8}.facebook-quick-signup-failure-page .title{color:#050505}.facebook-quick-signup-failure-page .btn-facebook-redirect{background-color:#050505}.facebook-quick-signup-failure-page .btn-facebook-redirect:hover{background-color:#050505;color:#fff;opacity:0.8}
.nav-bg-color .NavigationBar-mainMenu .List-item .Label,.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus,.ProductDetail-product-info .btn-custom,.member-price-tag,.ProductList-settings-list li:hover,.btn-cart-fixed,.modal-confirm .modal-footer .btn-confirm,.NavigationBar-nestedList .NavigationBar-nestedList-dropdown .fa.menu-list-item,#shopline-copyright>a{color:#FFFFFF}.nav-bg-color .MenuPanel-section .MenuPanel-section-header,.nav-bg-color .MenuPanel-section .List-item a,.cart-chkt-btn,.QuickCart-modal .quick-cart-body .product-info .btn-custom,.btn-color-primary,.member-profile-save,.mobile-verification-btn,.MemberCenter .product-review-block .btn-primary,.custom-dropdown .custom-dropdown-option:hover{color:#FFFFFF !important}.cart-chkt-btn:hover .ladda-spinner div{background:#FFFFFF !important}.nav-bg-color .MenuPanel-othersMenu .List-item{border-color:#FFFFFF}.addon-promotions-container .addon-item-chkbox span:before{border-left-color:#FFFFFF}.nav-bg-color .MenuPanel-section .MenuPanel-section-header:not(:first-child):before{border-top-color:#FFFFFF}.quick-cart-cancel-holder .quick-cart-cancel:before,.quick-cart-cancel-holder .quick-cart-cancel:after,.addon-promotions-container .addon-item-chkbox span:before{border-bottom-color:#FFFFFF}.nav-bg-color .MenuPanel-othersMenu .List-item svg{fill:#FFFFFF}
.product-info .price-sale,.product-info .price-regular:not(.price-crossed),.product-info .quick-cart-price>div>div:not(.price-crossed),.ProductDetail-product-info .price-sale,.ProductDetail-product-info .price-regular:not(.price-crossed),.addon-promotions-container .addon-promotion-item .price-sale,.NavigationBar .List-item:hover .App-currencyDropdown .Label:first-letter,.NavigationBar .List-item:hover .CartPanel-toggleButton .Cart-count,.NavigationBar .List-item:hover .NavigationBar-actionMenu-button span,.Wishlist-addItem-block .btn-add-wishlist,.Back-in-stock-addItem-block .btn-add-back-in-stock,.ProductList-nestedList-dropdown .Label:hover,.PromotionPage-container product-item .price-sale,.PromotionCart-content .product-content .price-details{color:#DD4124}.tertiary-color-price,.tertiary-hover-color:hover,.ProductReview-container a.primary-color-hover:hover,.ProductReview-container .List-item a.primary-color-hover:hover,.ProductReview-container .List-item a.disabled{color:#DD4124 !important}.NavigationBar .List-item:hover .CartPanel-toggleButton .Cart-count:not(:empty),.NavigationBar .NavigationBar-nestedList .multi-sub .sub-prev:hover>span,.NavigationBar .NavigationBar-nestedList .multi-sub .sub-next:hover>span{background:#DD4124}.PromotionCart-content .product-content .input-group-btn>.btn{border-color:#DD4124}.form-quantity .input-group-btn .btn-checkout{border-color:#DD4124 !important}.form-quantity .input-group-btn:last-child .btn-checkout:after,.accordion-box .accordion-title span:after,.addon-promotions-container .addon-promotion-item .quantity-container span:last-child button:after{border-left-color:#DD4124}.form-quantity .input-group-btn .btn-checkout:before,.accordion-box .accordion-title span:before,.addon-promotions-container .addon-promotion-item .quantity-container button:before{border-bottom-color:#DD4124}.tertiary-fill-icon,.NavigationBar .List-item:hover svg.icons,.PromotionPage-container product-item .boxify-image-wrapper .btn-add-to-promotion-cart svg{fill:#DD4124}.tertiary-hover-icon:hover svg{fill:#DD4124 !important}.ProductReview-container a{text-decoration:none !important}
*{font-family:"Open Sans", "Noto Sans TC", serif}
.boxify-image, .Image-boxify-image {
background-size: cover;
}
/* Custom CSS */
/* Style for region dropdown */
/* #region a{ text-align: left; opacity:0.5; color:#000; padding: 3px 5px !important; } */
#region .caret { margin-left: 4px; }
#region-toggle { font-weight:400 !important; }
@media screen and (max-width:767px) { #region { display:none !important; }}
.fa-map-pin { margin-right:5px; }
#region-toggle {
-webkit-appearance: none;
border:none;
color: #333 !important;
}
#region-toggle .fa.fa-angle-down {
padding-left: 3px;
}
#region .dropdown-menu {
border-color: white;
border-radius: 0px !important;
}
#region .dropdown-menu>li>a:hover, #region .dropdown-menu>li>a:focus {
color: #888;
text-decoration: none;
background-color: white;
}
#region {
height:22px
}
/*Hide affiliate promotion in checkout page*/
body.cart.index .use-affiliate{
display: none;
}
/*END*/
/*Hide affiliate promotion in express checkout page*/
body.pages #page-summary>.cart-coupon>.btn.btn-link.btn-toggle.use-affiliate{
display: none;
}
/*END*/
/*Hide coupon promotion in express checkout page*/
body.pages #page-summary>.cart-coupon>.btn.btn-link.btn-toggle.use-coupon{
display: none;
}
/* hide last 6 category items*/
.ProductList-categoryMenu > li:nth-last-child(-n+6) {
display:none;
}
.MenuPanel-categoryMenu > li:nth-last-child(-n+6) {
display:none;
}
/*END*/
(function(e,t,s,c,n,o,p){e.shoplytics||((p=e.shoplytics=function(){
p.exec?p.exec.apply(p,arguments):p.q.push(arguments)
}).v='1.0',p.q=[],(n=t.createElement(s)).async=!0,
n.src=c,(o=t.getElementsByTagName(s)[0]).parentNode.insertBefore(n,o))
})(window,document,'script','https://cdn.shoplytics.com/js/shoplytics-tracker/latest/shoplytics-tracker.js');
shoplytics('init', 'shop', {
register: {"session_id":"b754996b21ed09f7daa6651908478804","merchant_id":"5965eedb5521153219008701","country":"TW","language":"zh-hant"}
});
// for facebook login redirect
if (location.hash === '#_=_') {
history.replaceState(null, document.title, location.toString().replace(/#_=_$/, ''));
}
function SidrOptions(options) {
if (options === undefined) { options = {}; }
this.side = options.side || 'left';
this.speed = options.speed || 200;
this.name = options.name;
this.onOpen = options.onOpen || angular.noop;
this.onClose = options.onClose || angular.noop;
}
window.SidrOptions = SidrOptions;
window.resizeImages = function(element) {
var images = (element || document).getElementsByClassName("sl-lazy-image")
var styleRegex = /background-image: *url(['"]?(https://shoplineimg.com/[^'")]*)+['"]?)/
for (var i = 0; i 1 ? 2 : 1
// Resize by size of given element or image itself
var refElement = image;
if (image.getAttribute('data-ref-element')) {
var selector = image.getAttribute('data-ref-element');
if (selector.indexOf('.') === 0) {
refElement = document.getElementsByClassName(image.getAttribute('data-ref-element').slice(1))[0]
} else {
refElement = document.getElementById(image.getAttribute('data-ref-element'))
}
}
var refWidth = image.getAttribute('data-max-width') ? Math.min(parseInt(image.getAttribute('data-max-width')), refElement.offsetWidth) : refElement.offsetWidth;
var refHeight = image.getAttribute('data-max-height') ? Math.min(parseInt(image.getAttribute('data-max-height')), refElement.offsetHeight) : refElement.offsetHeight;
// Get desired size based on view, segment and screen scale
var resizedWidth = isNaN(width) === false ? Math.ceil(refWidth * scale / segment) * segment : undefined
var resizedHeight = isNaN(height) === false ? Math.ceil(refHeight * scale / segment) * segment : undefined
if (resizedWidth || resizedHeight) {
var newSrc = head + '/' + ((resizedWidth || '') + 'x' + (resizedHeight || '')) + (tail || '') + '?';
for (var j = 1; j < urlParts.length; j++) { newSrc += urlParts[j]; }
if (newSrc !== src) {
if (setBySrc) {
image.setAttribute('src', newSrc);
} else {
image.setAttribute('style', image.getAttribute('style').replace(styleRegex, 'background-image:url('+newSrc+')'));
}
}
}
}
}
window.addEventListener('DOMContentLoaded', function() {
app.value('mainConfig', JSON.parse('{"sessionId":"b754996b21ed09f7daa6651908478804","merchantId":"5965eedb5521153219008701","appCoreHost":"shoplineapp.com","apiBaseUrl":"http://shoplineapp.com","eventTrackApi":"https://events.shoplytics.com/api","appendToUrl":"","env":"production","merchantData":{"_id":"5965eedb5521153219008701","owner_type":"User","status":"active","shop_status":"open","base_country_code":"TW","current_plan_key":"enterprise_year","current_theme_key":"kingsman_v2","invoice_activation":"active","addon_limit_enabled":false,"family_mart_vendors":[],"beta_feature_keys":["promotions_setup","promotions_apply","hide_coupon","checkout_v2","criteo"],"domain_remarks":"","facebook_page_id":"631145810382125","instagram_access_token":"IGQVJYLU4xLTMya3RiX2FEdXJnNWFZAZADNjTW5TWVRwWVZAHUmVpYk5UU2IwckozTGtNODJaUzA1Um16VDlyX1NSUTM2aDl0WWdsOTB3YU9oOUhwdUJQbk8zMGVFSkk5MHlESmpMdXp3","owner_id":"5965eedb61646d5850fe0100","name":"TeamJoined | 台灣","custom_redirection_enabled":true,"enabled_stock_reminder":true,"handle":"joinedtw","updated_at":"2020-04-29T05:59:58.537Z","features":[],"instagram_id":"17841403624093039","signup_ref":{},"remarks":{},"tags_s":"","tags":["other"],"is_short_message_activated":false,"profile_image":{},"base_currency_code":"TWD","hubspot_id":"5760251","favicon_media_id":"59a0e4d772fdc0b2320054a9","identifier":"50792668","mobile_logo_media_id":"5e4a242e3d5335000f87cc52","is_ka":false,"supported_languages":["en","zh-hant"],"staff_id":"5b5603c3b818790005cc43ae","show_sold_out":true,"ignore_browser_lang":false,"banner_ids":[],"subscription_currency":{"id":"twd","iso_code":"TWD","alternate_symbol":"NT$","name":"New Taiwan Dollar","symbol_first":true,"subunit_to_unit":1},"bought_domains":[{"_id":"5df719b78a8bb776d682df01","domain_name":"www.teamjoined.com.tw","provider":"opensrs","expiry_date":"2020-08-27T16:19:11.000Z","last_applied_at":"2019-12-16T05:44:23.034Z","updated_at":"2019-12-16T05:44:23.035Z","created_at":"2019-12-16T05:44:23.035Z"}],"layout_bundle_tag":"20200122100534731972251","feature_keys_updated_at":"2020-04-20T07:45:06.719Z","brand_home_url":"https://www.teamjoined.com.tw","base_currency":{"id":"twd","iso_code":"TWD","alternate_symbol":"NT$","name":"New Taiwan Dollar","symbol_first":true,"subunit_to_unit":1},"mobile_logo_media_url":"https://img.shoplineapp.com/media/image_clips/5e4a242e3d5335000f87cc52/original.png?1581917229","shop_default_home_url":"https://joinedtw.shoplineapp.com","payment_method_count":4,"delivery_option_count":5,"credit_balance":null,"rollout_keys":["blog_app","broadcast_center","bundle_group","bundle_stackable","channel_integration","channel_line","consolidated_billing","customer_tag","fb_broadcast","fb_comment_app","form_builder","form_builder_access","hidden_product","line_broadcast","line_ec","line_login","marketing_affiliate","marketing_affiliate_p2","open_api_management","order_sms_notify","product_available_time","product_quantity_update","quick_signup","shopee_api_integration","shopline_product_reviews","sms_broadcast","structured_data","tier_birthday_credit","tier_reward_credit","wishlist_app","apps_store_fb_comment","address_format_batch2","job_api_products_export","footer_builder_new","promotion_hour","customer_import_v2","credit_setting_logs","address_format_my","UTM_register","address_format_jp","my_pricing_page_2019","hidden_product_p2","job_api_user_export","tw_stripe_subscription","line_shopping_new_fields","customer_new_report","fbe_oe","select_all_customer","assign_products_to_category","address_format_us","select_all_inventory","molpay_credit_card","fmt_revision","hk_pricing_page_2019","promotion_minitem","order_export_v2","breadcrumb","apps_store","address_format_vn","sso_lang_th","fmt_c2c_newlabel","dashboard_v2","fb_sub_button","subscription_currency","shoplytics_behavior","paypal_upgrade","tappay_sdk_v2_3_2","einvoice_newlogic","fm_order_receipt","static_resource_host_by_region","orderemail_new_logic","manual_order","order_status_tag_color","UTM_export","default_theme_ultrachic","staff_elasticsearch","message_revamp","tappay_3D_secure","bulk_payment_delivery_setting","recaptcha_reset_pw","shoplytics_lite","tnc-checkbox","preset_publish","execute_shipment_permission","revert_credit_status","custom_order_export","broadcast_advanced_filters","image_host_by_region","tw_pricing_page_2019","feature_alttag_phase1","variant_image_selector","integrated_sfexpress","auto_credit_reward","ultra_setting","tw_fm_sms","customer_advanced_filter","h2_tag_phase1","auto_save_sf_plus_address","theme_ultrachic","delivery_time","new_onboarding_flow","auto_credit_percentage","broadcast_email_html","signin_register_revamp","shopping_session_enabled","new_layout_for_mobile_and_pc","product_index_v2","facebook_notify","stripe_radar","apps_store_blog","bundle_pricing","facebook_dia","tappay_sdk_v3","multi_lang","component_h1_tag","auto_credit_recurring","stripe_3d_secure","apps_store_wishlist","cart_addon_limit","order_split","page_view_cache","google_dynamic_remarketing_tag","godaddy","rejected_bill_reminder","date_picker_v2","image_widget_mobile","image_gallery_p2","broadcast_line_template","create_staff_revamp","new_sinopac_3d","theme_kingsman_v2","credit_condition","711_c2b_report_v2","broadcast_clone","admin_vietnam_dong","manual_order_7-11","admin_v2","3_layer_category","taxes_settings","kingsman_v2_setting","addon_quantity","variation_label_swatches","image_gallery","staff_service_migration","broadcast_facebook_template","broadcast_analytics","promotion_blacklist","ecpay_expirydate","new_return_management","revert_credit_p2","customer_export_restrict","footer_builder","order_filter_shipped_date","ig_new_api","sso_lang_vi","facebook_ads","broadcast_unsubscribe_email","unified_admin","sl_pos_credit","vn_pricing_page_2020","tw_sc_banner"],"subscribed_webhook_topics":[],"raw_subscription_currency":"","user_setting":{"_id":"5965eedb5521153219008704","created_at":"2017-07-12T09:41:47.550Z","data":{"general_fields":[{"type":"gender","options":{"order":{"include":"true","required":"true"},"signup":{"include":"true","required":"true"},"profile":{"include":"true","required":"true"}}},{"type":"birthday","options":{"order":{"include":"false","required":"false"},"signup":{"include":"true","required":"true"},"profile":{"include":"true","required":"false"}}}],"facebook_login":{"status":"active","app_id":"400822577003103"},"facebook_comment":"","line_login":{"status":"active"},"recaptcha_signup":"","email_verification":"","login_with_verification":"","upgrade_reminder":{"status":"active"}},"item_type":"","key":"users","name":null,"owner_id":"5965eedb5521153219008701","owner_type":"Merchant","publish_status":"published","status":"active","updated_at":"2020-03-09T03:57:45.826Z","value":null},"product_setting":{"variation_display":"dropdown"},"order_setting":{"invoice_activation":"active","short_message_activation":"inactive","stock_reminder_activation":"true","default_out_of_stock_reminder":true,"auto_cancel_expired_orders":true,"auto_revert_credit":true,"enabled_order_auth_expiry":false,"enforce_user_login_on_checkout":false,"enabled_abandoned_cart_notification":true,"enable_order_split_einvoice_reissue":true,"no_duplicate_uniform_invoice":false,"hourly_auto_invoice":true,"enabled_location_id":false,"custom_fields":[{"type":"textarea","label":"港澳馬來或其他國家之國際顧客\n煩請至以下國際官網選購\nhttps://www.teamjoined.com.my/\n感謝您的支持!\nteamjoined","display_type":"text_field","name_translations":{"zh-hant":"港澳馬來或其他國家之國際顧客\n煩請至以下國際官網選購\nhttps://www.teamjoined.com.my/\n感謝您的支持!\nTeamJoined"},"hint_translations":{"en":"","zh-hant":"happy_shopper123 / 請正確填入你的Line ID。"}},{"type":"text","label":"品項再次確認","required":"true","display_type":"dropdown","dropdown_options":[{"zh-hant":"「我已確認所訂購品項與取貨人的身份證件姓名相符並且正確無誤,送出訂單後無法修改」"}],"name_translations":{"zh-hant":"品項再次確認"},"hint_translations":{"zh-hant":"請再次確認訂單【品項和尺寸及取貨人姓名(需與證件相符)】無誤,訂單送出後一律不提供修改"},"field_id":"5dd394e7818a0e002daed830"}],"invoice":{"tax_id":"50792668","oversea_tax_type":"1","tax_type":"1","n_p_o_b_a_n":{"name":"財團法人中華民國兒童癌症基金會","code":"88888","short_name":"兒癌基金會"},"source":{"website_codes":"t5e0a7m","api_password":"60613ABD0"}},"facebook_messenging":{"status":"deactivated"},"status_update_sms":{"status":"deactivated"}},"time_zone":"Asia/Taipei"},"localeData":{"loadedLanguage":{"name":"繁體中文","code":"zh-hant"},"supportedLocales":[{"name":"English","code":"en"},{"name":"繁體中文","code":"zh-hant"}]},"currentUser":{"_id":"5bf4fcf9692676001464d1e3","email":"michael830317@yahoo.com.tw","owner_type":"Merchant","status":"active","profile_image":{},"name":"Ray Chou","provider":"","locale_code":"zh-hant","delivery_addresses":[],"phones":["0925382945"],"custom_data":{},"owner_id":"5965eedb5521153219008701","is_mobile_phone_signup":false,"is_quick_signup":false,"registered_at":"2018-11-21T06:36:41.680Z","credit_balance":11584,"created_by":"shop","gender":"male","order_count":18,"orders_total_sum":{"cents":0.0,"currency_iso":"TWD"},"registered_by":"shop","wapos_id":null,"utm_data":{},"member_point_balance":0,"membership_tier_id":"5b9a3c1beb5422000e6ec97f","tier_expires_at":"2020-11-05T15:59:59.999Z","profile_image_url":"https://shoplineimg.com/assets/misc/placeholder-user-default.png","membership_tier":{"name_translations":{"zh-hant":"VIP 會員【白金】"}}},"themeSettings":{"primary-color":"050505","secondary-color":"FFFFFF","tertiary-color":"DD4124","font-family":"Open Sans, Noto Sans TC","categories_collapsed":true,"image_fill":true,"is_multicurrency_enabled":true,"category_page":"24","mobile_categories_collapsed":true,"enabled_quick_cart":true,"facebook_comment":true,"hide_language_selector":false,"show_promotions_on_product":true,"opens_in_new_tab":false,"enabled_wish_list":true,"goto_top":true,"mobile_categories_removed":true,"enabled_sort_by_sold":true},"features":{"plans":{"free":{"member_price":false,"cart_addon":false,"google_analytics_ecommerce":false,"membership":false,"shopline_logo":true,"user_credit":{"manaul":false,"auto":false},"variant_image_selector":false},"standard":{"member_price":false,"cart_addon":false,"google_analytics_ecommerce":false,"membership":false,"shopline_logo":true,"user_credit":{"manaul":false,"auto":false},"variant_image_selector":false},"starter":{"member_price":false,"cart_addon":false,"google_analytics_ecommerce":false,"membership":false,"shopline_logo":true,"user_credit":{"manaul":false,"auto":false},"variant_image_selector":false},"pro":{"member_price":false,"cart_addon":false,"google_analytics_ecommerce":false,"membership":false,"shopline_logo":false,"user_credit":{"manaul":false,"auto":false},"variant_image_selector":false},"business":{"member_price":false,"cart_addon":false,"google_analytics_ecommerce":true,"membership":true,"shopline_logo":false,"user_credit":{"manaul":false,"auto":false},"facebook_comments_plugin":true,"variant_image_selector":false},"basic":{"member_price":false,"cart_addon":false,"google_analytics_ecommerce":false,"membership":false,"shopline_logo":false,"user_credit":{"manaul":false,"auto":false},"variant_image_selector":false},"basic2018":{"member_price":false,"cart_addon":false,"google_analytics_ecommerce":false,"membership":false,"shopline_logo":true,"user_credit":{"manaul":false,"auto":false},"variant_image_selector":false},"sc":{"member_price":false,"cart_addon":false,"google_analytics_ecommerce":true,"membership":false,"shopline_logo":true,"user_credit":{"manaul":false,"auto":false},"facebook_comments_plugin":true,"facebook_chat_plugin":true,"variant_image_selector":false},"advanced":{"member_price":false,"cart_addon":false,"google_analytics_ecommerce":true,"membership":false,"shopline_logo":false,"user_credit":{"manaul":false,"auto":false},"facebook_comments_plugin":true,"facebook_chat_plugin":true,"variant_image_selector":false},"premium":{"member_price":true,"cart_addon":true,"google_analytics_ecommerce":true,"membership":true,"shopline_logo":false,"user_credit":{"manaul":true,"auto":true},"google_dynamic_remarketing":true,"facebook_comments_plugin":true,"facebook_chat_plugin":true,"wish_list":true,"facebook_messenger_subscription":true,"product_feed":true,"express_checkout":true,"variant_image_selector":true},"enterprise":{"member_price":true,"cart_addon":true,"google_analytics_ecommerce":true,"membership":true,"shopline_logo":false,"user_credit":{"manaul":true,"auto":true},"google_dynamic_remarketing":true,"facebook_comments_plugin":true,"facebook_chat_plugin":true,"wish_list":true,"facebook_messenger_subscription":true,"product_feed":true,"express_checkout":true,"variant_image_selector":true},"crossborder":{"member_price":true,"cart_addon":true,"google_analytics_ecommerce":true,"membership":true,"shopline_logo":false,"user_credit":{"manaul":true,"auto":true},"google_dynamic_remarketing":true,"facebook_comments_plugin":true,"facebook_chat_plugin":true,"wish_list":true,"facebook_messenger_subscription":true,"product_feed":true,"express_checkout":true,"variant_image_selector":true},"o2o":{"member_price":true,"cart_addon":true,"google_analytics_ecommerce":true,"membership":true,"shopline_logo":false,"user_credit":{"manaul":true,"auto":true},"google_dynamic_remarketing":true,"facebook_comments_plugin":true,"facebook_chat_plugin":true,"wish_list":true,"facebook_messenger_subscription":true,"product_feed":true,"express_checkout":true,"subscription_product":true,"variant_image_selector":true}}},"requestCountry":"TW","trackerEventData":{},"currencyData":{"supportedCurrencies":[{"name":"$ HKD","symbol":"$","iso_code":"hkd"},{"name":"¥ CNY","symbol":"¥","iso_code":"cny"},{"name":"$ TWD","symbol":"$","iso_code":"twd"},{"name":"$ USD","symbol":"$","iso_code":"usd"},{"name":"$ SGD","symbol":"$","iso_code":"sgd"},{"name":"€ EUR","symbol":"€","iso_code":"eur"},{"name":"$ AUD","symbol":"$","iso_code":"aud"},{"name":"£ GBP","symbol":"£","iso_code":"gbp"},{"name":"₱ PHP","symbol":"₱","iso_code":"php"},{"name":"RM MYR","symbol":"RM","iso_code":"myr"},{"name":"฿ THB","symbol":"฿","iso_code":"thb"},{"name":"د.إ AED","symbol":"د.إ","iso_code":"aed"},{"name":"¥ JPY","symbol":"¥","iso_code":"jpy"},{"name":"K MMK","symbol":"K","iso_code":"mmk"},{"name":"$ BND","symbol":"$","iso_code":"bnd"},{"name":"₩ KRW","symbol":"₩","iso_code":"krw"},{"name":"Rp IDR","symbol":"Rp","iso_code":"idr"},{"name":"₫ VND","symbol":"₫","iso_code":"vnd"}]},"previousUrl":"/pages/5de5f9af9751d70018ba83e2","checkoutLandingPath":"/cart","webpSupported":54,"pageType":"pages-show"}'));
app.value('flash', {
});
app.value('flash_data', {});
app.constant('imageServiceEndpoint', 'https://shoplineimg.com/')
app.constant('staticImageHost', 'shoplineimg.com')
app.constant('staticResourceHost', 'https://s3-ap-southeast-1.amazonaws.com/static.shoplineapp.com/')
app.constant('FEATURES_LIMIT', JSON.parse('{"product_limit":-1,"image_limit":100000,"payment":{"stripe_apple_pay":true,"stripe_fpx":false,"alipay":false,"hsbc_fps":false,"payme":true},"integrated_delivery":{"create":{"seven_eleven":true,"family_mart":true,"tcat":true,"integrated_sfexpress":true},"edit":{"seven_eleven":true,"family_mart":true,"tcat":true,"integrated_sfexpress":true}},"media":{"product_main":12,"product_detail":20},"coupon_limit":-1,"promotion_limit":-1,"addon_products_limit":-1,"enable_cart_addon_item":true,"gifts_limit":-1,"page_limit":-1,"product_page_limit":10,"category_limit":-1,"show_footer_brand":false,"order_settings":{"custom_field_limit":5,"order_sms_notify":true,"line_ec":true},"link_limits":{"main":100,"footer1":5,"footer2":5},"event_trackers":["google_analytics","google_analytics_ecommerce","google_adwords","google_tag","facebook_pixel","facebook_audience","facebook_standard_pixel","google_remarketing","bing","yahoo","criteo","custom"],"sfexpress_types":["service","store","centre","eflocker"],"product_feed":{"facebook_catalog":true,"criteo":false},"staff_limit":-1,"membership":{"index":true,"export":true,"import":true,"view_user":true,"custom_field_limit":5,"tiers":5,"blacklist":true},"analytics":true,"design_submenu":true,"design":{"multicurrency":true,"custom_css":true,"shop_template_advanced_setting":true,"logo_favicon":true},"theme_level":3,"user_settings":{"facebook_login":true,"recaptcha_signup":true},"reports":true,"user_credit":{"manual":true,"auto":true},"blog":true,"facebook_comments_plugin":true,"wish_list":true,"facebook_messenger_subscription":true,"abandoned_cart_notification":true,"broadcast_center":true,"subscription_product":true,"supported_languages_limit":-1,"available_languages":["en","zh-hant","zh-cn","vi","ms","ja","th","de","fr","id"],"variant_image_selector":true,"manual_order":true,"channel_shopee":true,"membership_tiers":true,"auto_credit":true,"cart_addon":true,"google_analytics_ecommerce":true,"shopline_logo":false,"express_checkout":true,"facebook_chat_plugin":true,"google_dynamic_remarketing":true,"image_widget_mobile":true,"variant_saleprice_cost_weight":false,"currency":{"vietnam_dong":false},"customer_advanced_filter":true,"order_filter_shipped_date":true,"marketing_affiliate":true,"pos":"with_shop","taxes_settings":true,"image_gallery_p2":true,"admin_v2":true,"broadcast_unsubscribe_email":true,"shopcom_push_api":false,"message_center_v2":false,"line_shopping_new_fields":true,"merchant_webhook_via_event_center":false,"product_quantity_update":true,"handsup_checkout":false,"member_points":false,"blog_app":true,"fb_comment_app":true,"wishlist_app":true,"custom_notify":false,"email_order_notify":false,"shopline_product_reviews":true,"email_member_register_notify":false,"upgrade_reminder":true,"unified_admin":true,"bundle_group":true,"subscription_currency":true,"sl_pos":false,"email_member_forget_password_notify":false,"sl_pos_channel":false,"channel_integration":true,"shop_crm_express":false,"hidden_product_p2":true,"product_stock":false,"product_info":false,"delivery_with_emap":false,"facebook_ads":true,"admin_custom_domain":false,"custom_sms_order_notify":false,"line_1on1_chat":false,"fb_1on1_chat":false,"ninja_van":false,"integration_one":false,"product_log_v2":false,"711_cross_delivery":false,"unique_id_feed":false,"dashboard_v2":true,"fb_shop_now_button":false,"admin_lang_th":false,"admin_lang_vi":false,"studio_livestream":false,"line_in_chat_shopping":false,"layout_engine":false,"google_tag_manager":true,"yahoo_dot":true,"bing_ads":true,"data_layer_info":false,"ig_new_api":true,"auto_reply_fb":false,"tcat_newlabel":false,"settings_field":false,"channel_customer_authentication":false,"online_store_design":true,"sl_pixel_tracker":false,"toggle_mobile_category":true,"line_signup":true,"vn_pricing_page_2020":true,"footer_brand":false,"product_feed_info":false,"google_recaptcha":true,"tw_pricing_page_sc_tab":false,"tw_sc_banner":true,"shoplytics_to_hd":false,"fbe_v1":false,"fbe_v2":false,"operational_bill":true,"hidden_product":true,"marketing_affiliate_p2":true,"product_available_time":true,"select_all_customer":true,"fmt_revision":true,"new_sinopac_3d":true,"ecpay_expirydate":true,"revert_credit_p2":true}'))
app.config(function (AnalyticsProvider) {
AnalyticsProvider.setAccount('UA-109425765-1');
AnalyticsProvider.useECommerce(true, true);
AnalyticsProvider.setDomainName('www.teamjoined.com.tw');
AnalyticsProvider.setCurrency('TWD');
AnalyticsProvider.trackPages(false);
});
app.value('fb_pixel_settings', {
unique_ids: true,
single_variation: false
});
try {
var $searchPanelMobile;
var $mask = $('
');
function showMask() {
$mask.css({'opacity': '0.3', 'display': 'block'});
$('.Product-searchField-panel').removeClass('is-show');
}
function hideMask() {
$mask.css({'opacity': '0'});
setTimeout(function() {
$mask.css({'display': 'none'});
}, 200);
}
var cartPanelOptions = new SidrOptions({
name: 'cart-panel',
onOpen: function() {
showMask();
angular.element('body').scope().$broadcast('cart.reload');
},
onClose: hideMask
});
$('.sl-cart-toggle').sidr(cartPanelOptions);
$('.sl-menu-panel-toggle').sidr(new SidrOptions({ name: 'MenuPanel', onOpen: showMask, onClose: hideMask }));
$mask
.appendTo('body')
.on('click', function() {
$.sidr('close', 'MenuPanel');
$.sidr('close', 'cart-panel');
hideMask();
});
$( ".body-wrapper" ).on("click touch touchmove", function(e) {
if ($(".body-wrapper").hasClass("sidr-open" )) {
e.preventDefault();
e.stopPropagation();
$.sidr('close','left-panel');
$.sidr('close','cart-panel');
$.sidr('close','currency-panel');
$.sidr('close','language-panel');
$('html, body').css({'overflow': 'auto'});
}
});
$(document).ready(function() {
$searchPanelMobile = $jq('.search-panel-mobile');
// to show a loading dialog when a huge Product Description Image/Video blocks page content from rednering
$("#product-loading").remove();
$jq(".additional-details-content, .ProductDetail-additional, .ProductDetail-gallery")
.find("img[data-src]:not([data-src='']), iframe[data-src]:not([data-src=''])")
.each(function() {
$(this)
.attr('src', $(this).attr('data-src'))
.removeAttr('data-src');
});
if ($jq("#home-carousel").length > 0) {
$jq("#home-carousel").owlCarousel({
items: 1,
singleItem: true,
autoPlay: true,
stopOnHover: true,
lazyLoad : true,
onLoadedLazy: function(event) { window.resizeImages(event.target); },
autoHeight:true,
navigation: true,
navigationText: false,
});
}
$jq(".owl-carousel").each(function () {
var owl = $jq(this);
owl.owlCarousel({
loop: true,
items: 1,
margin: 10,
nav: false,
lazyLoad: true,
onLoadedLazy: function(event) {
window.resizeImages(event.target);
},
onInitialized: function() {
//owl-stage have transition: 0.25s Time difference
setTimeout(function() {
owl.prev('.owl-carousel-first-initializing').hide();
owl
.removeClass('initializing')
.trigger('refresh.owl.carousel');
}, 300);
},
autoplay: true,
autoplayTimeout: (parseFloat($jq(this).data('interval')) || 5) * 1000,
autoHeight: true,
autoplayHoverPause: false // https://github.com/OwlCarousel2/OwlCarousel2/pull/1777
});
});
setTimeout(function() {
$jq('.title-container.ellipsis').dotdotdot({
wrap: 'letter'
});
$jq('.Product-item .Product-info .Product-title').dotdotdot({
wrap: 'letter',
ellipsis: '...',
height: 40
});
});
// avoid using FB.XFBML.parse() as it breaks the fb-checkbox rendering, if u encounter resize issue, solve with CSS instead
});
$(document).on('click', '.m-search-button', function(){
$searchPanelMobile.toggleClass('click');
if ($('.body-wrapper').hasClass('sidr-open')) {
$.sidr('close','left-panel');
$.sidr('close','cart-panel');
$.sidr('close','language-panel');
$.sidr('close','currency-panel');
$('html, body').css({'overflow': 'auto'});
}
});
$(document).on('click', '.search-mask', function() {
$searchPanelMobile.toggleClass('click');
});
if (window.scriptQueue && window.scriptQueue.length > 0) {
for (var i = 0; i div > ul:nth-of-type(1)').append('
');
$('html[lang="en"] .NavigationBar-actionMenu-container> div > ul:nth-of-type(1)').append('
');
$('html[lang="zh-hant"] #MenuPanel .MenuPanel-othersMenu').before('');
$('html[lang="en"] #MenuPanel .MenuPanel-othersMenu').before('')
} catch (e) {
console.error(e);
}
angular.bootstrap(document, ['shop_app']);
});
window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"aa0d8411ae","applicationID":"5470801","transactionName":"ewxaQUoKDQ0DQRhAU18GRxpLDQ4W","queueTime":0,"applicationTime":483,"agent":""}
(window.NREUM||(NREUM={})).loader_config={xpid:"VwAPUFFTGwYEU1FaBwA=",licenseKey:"aa0d8411ae",applicationID:"5470801"};window.NREUM||(NREUM={}),__nr_require=function(t,n,e){function r(e){if(!n[e]){var o=n[e]={exports:{}};t[e][0].call(o.exports,function(n){var o=t[e][1][n];return r(o||n)},o,o.exports)}return n[e].exports}if("function"==typeof __nr_require)return __nr_require;for(var o=0;o0&&(p-=1)}),s.on("internal-error",function(t){i("ierr",[t,c.now(),!0])})},{}],3:[function(t,n,e){t("loader").features.ins=!0},{}],4:[function(t,n,e){function r(t){}if(window.performance&&window.performance.timing&&window.performance.getEntriesByType){var o=t("ee"),i=t("handle"),a=t(9),s=t(8),c="learResourceTimings",f="addEventListener",u="resourcetimingbufferfull",d="bstResource",l="resource",p="-start",h="-end",m="fn"+p,w="fn"+h,v="bstTimer",g="pushState",y=t("loader");y.features.stn=!0,t(7),"addEventListener"in window&&t(5);var x=NREUM.o.EV;o.on(m,function(t,n){var e=t[0];e instanceof x&&(this.bstStart=y.now())}),o.on(w,function(t,n){var e=t[0];e instanceof x&&i("bst",[e,n,this.bstStart,y.now()])}),a.on(m,function(t,n,e){this.bstStart=y.now(),this.bstType=e}),a.on(w,function(t,n){i(v,[n,this.bstStart,y.now(),this.bstType])}),s.on(m,function(){this.bstStart=y.now()}),s.on(w,function(t,n){i(v,[n,this.bstStart,y.now(),"requestAnimationFrame"])}),o.on(g+p,function(t){this.time=y.now(),this.startPath=location.pathname+location.hash}),o.on(g+h,function(t){i("bstHist",[location.pathname+location.hash,this.startPath,this.time])}),f in window.performance&&(window.performance["c"+c]?window.performance[f](u,function(t){i(d,[window.performance.getEntriesByType(l)]),window.performance["c"+c]()},!1):window.performance[f]("webkit"+u,function(t){i(d,[window.performance.getEntriesByType(l)]),window.performance["webkitC"+c]()},!1)),document[f]("scroll",r,{passive:!0}),document[f]("keypress",r,!1),document[f]("click",r,!1)}},{}],5:[function(t,n,e){function r(t){for(var n=t;n&&!n.hasOwnProperty(u);)n=Object.getPrototypeOf(n);n&&o(n)}function o(t){s.inPlace(t,[u,d],"-",i)}function i(t,n){return t[1]}var a=t("ee").get("events"),s=t("wrap-function")(a,!0),c=t("gos"),f=XMLHttpRequest,u="addEventListener",d="removeEventListener";n.exports=a,"getPrototypeOf"in Object?(r(document),r(window),r(f.prototype)):f.prototype.hasOwnProperty(u)&&(o(window),o(f.prototype)),a.on(u+"-start",function(t,n){var e=t[1],r=c(e,"nr@wrapped",function(){function t(){if("function"==typeof e.handleEvent)return e.handleEvent.apply(e,arguments)}var n={object:t,"function":e}[typeof e];return n?s(n,"fn-",null,n.name||"anonymous"):e});this.wrapped=t[1]=r}),a.on(d+"-start",function(t){t[1]=this.wrapped||t[1]})},{}],6:[function(t,n,e){function r(t,n,e){var r=t[n];"function"==typeof r&&(t[n]=function(){var t=i(arguments),n={};o.emit(e+"before-start",[t],n);var a;n[m]&&n[m].dt&&(a=n[m].dt);var s=r.apply(this,t);return o.emit(e+"start",[t,a],s),s.then(function(t){return o.emit(e+"end",[null,t],s),t},function(t){throw o.emit(e+"end",[t],s),t})})}var o=t("ee").get("fetch"),i=t(22),a=t(21);n.exports=o;var s=window,c="fetch-",f=c+"body-",u=["arrayBuffer","blob","json","text","formData"],d=s.Request,l=s.Response,p=s.fetch,h="prototype",m="nr@context";d&&l&&p&&(a(u,function(t,n){r(d[h],n,f),r(l[h],n,f)}),r(s,"fetch",c),o.on(c+"end",function(t,n){var e=this;if(n){var r=n.headers.get("content-length");null!==r&&(e.rxSize=r),o.emit(c+"done",[null,n],e)}else o.emit(c+"done",[t],e)}))},{}],7:[function(t,n,e){var r=t("ee").get("history"),o=t("wrap-function")(r);n.exports=r;var i=window.history&&window.history.constructor&&window.history.constructor.prototype,a=window.history;i&&i.pushState&&i.replaceState&&(a=i),o.inPlace(a,["pushState","replaceState"],"-")},{}],8:[function(t,n,e){var r=t("ee").get("raf"),o=t("wrap-function")(r),i="equestAnimationFrame";n.exports=r,o.inPlace(window,["r"+i,"mozR"+i,"webkitR"+i,"msR"+i],"raf-"),r.on("raf-start",function(t){t[0]=o(t[0],"fn-")})},{}],9:[function(t,n,e){function r(t,n,e){t[0]=a(t[0],"fn-",null,e)}function o(t,n,e){this.method=e,this.timerDuration=isNaN(t[1])?0:+t[1],t[0]=a(t[0],"fn-",this,e)}var i=t("ee").get("timer"),a=t("wrap-function")(i),s="setTimeout",c="setInterval",f="clearTimeout",u="-start",d="-";n.exports=i,a.inPlace(window,[s,"setImmediate"],s+d),a.inPlace(window,[c],c+d),a.inPlace(window,[f,"clearImmediate"],f+d),i.on(c+u,r),i.on(s+u,o)},{}],10:[function(t,n,e){function r(t,n){d.inPlace(n,["onreadystatechange"],"fn-",s)}function o(){var t=this,n=u.context(t);t.readyState>3&&!n.resolved&&(n.resolved=!0,u.emit("xhr-resolved",[],t)),d.inPlace(t,g,"fn-",s)}function i(t){y.push(t),h&&(b?b.then(a):w?w(a):(E=-E,O.data=E))}function a(){for(var t=0;t<y.length;t++)r([],y[t]);y.length&&(y=[])}function s(t,n){return n}function c(t,n){for(var e in t)n[e]=t[e];return n}t(5);var f=t("ee"),u=f.get("xhr"),d=t("wrap-function")(u),l=NREUM.o,p=l.XHR,h=l.MO,m=l.PR,w=l.SI,v="readystatechange",g=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],y=[];n.exports=u;var x=window.XMLHttpRequest=function(t){var n=new p(t);try{u.emit("new-xhr",[n],n),n.addEventListener(v,o,!1)}catch(e){try{u.emit("internal-error",[e])}catch(r){}}return n};if(c(p,x),x.prototype=p.prototype,d.inPlace(x.prototype,["open","send"],"-xhr-",s),u.on("send-xhr-start",function(t,n){r(t,n),i(n)}),u.on("open-xhr-start",r),h){var b=m&&m.resolve();if(!w&&!m){var E=1,O=document.createTextNode(E);new h(a).observe(O,{characterData:!0})}}else f.on("fn-end",function(t){t[0]&&t[0].type===v||a()})},{}],11:[function(t,n,e){function r(t){if(!i(t))return null;var n=window.NREUM;if(!n.loader_config)return null;var e=(n.loader_config.accountID||"").toString()||null,r=(n.loader_config.agentID||"").toString()||null,s=(n.loader_config.trustKey||"").toString()||null;if(!e||!r)return null;var c=a.generateCatId(),f=a.generateCatId(),u=Date.now(),d=o(c,f,u,e,r,s);return{header:d,guid:c,traceId:f,timestamp:u}}function o(t,n,e,r,o,i){var a="btoa"in window&&"function"==typeof window.btoa;if(!a)return null;var s={v:[0,1],d:{ty:"Browser",ac:r,ap:o,id:t,tr:n,ti:e}};return i&&r!==i&&(s.d.tk=i),btoa(JSON.stringify(s))}function i(t){var n=!1,e=!1,r={};if("init"in NREUM&&"distributed_tracing"in NREUM.init&&(r=NREUM.init.distributed_tracing,e=!!r.enabled),e)if(t.sameOrigin)n=!0;else if(r.allowed_origins instanceof Array)for(var o=0;o<r.allowed_origins.length;o++){var i=s(r.allowed_origins[o]);if(t.hostname===i.hostname&&t.protocol===i.protocol&&t.port===i.port){n=!0;break}}return e&&n}var a=t(19),s=t(13);n.exports={generateTracePayload:r,shouldGenerateTrace:i}},{}],12:[function(t,n,e){function r(t){var n=this.params,e=this.metrics;if(!this.ended){this.ended=!0;for(var r=0;r34||h<10)||window.opera||t.addEventListener("progress",function(t){n.lastSize=t.loaded},!1)}),u.on("open-xhr-start",function(t){this.params={method:t[0]},o(this,t[1]),this.metrics={}}),u.on("open-xhr-end",function(t,n){"loader_config"in NREUM&&"xpid"in NREUM.loader_config&&this.sameOrigin&&n.setRequestHeader("X-NewRelic-ID",NREUM.loader_config.xpid);var e=f(this.parsedOrigin);e&&e.header&&(n.setRequestHeader("newrelic",e.header),this.dt=e)}),u.on("send-xhr-start",function(t,n){var e=this.metrics,r=t[0],o=this;if(e&&r){var i=m(r);i&&(e.txSize=i)}this.startTime=a.now(),this.listener=function(t){try{"abort"!==t.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==t.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof n.onload))&&o.end(n)}catch(e){try{u.emit("internal-error",[e])}catch(r){}}};for(var s=0;s1?t[1]=i:t.push(i)}else t[0]&&t[0].headers&&(t[0].headers.append("newrelic",o),this.dt=r)}})}},{}],13:[function(t,n,e){var r={};n.exports=function(t){if(t in r)return r[t];var n=document.createElement("a"),e=window.location,o={};n.href=t,o.port=n.port;var i=n.href.split("://");!o.port&&i[1]&&(o.port=i[1].split("/")[0].split("@").pop().split(":")[1]),o.port&&"0"!==o.port||(o.port="https"===i[0]?"443":"80"),o.hostname=n.hostname||e.hostname,o.pathname=n.pathname,o.protocol=i[0],"/"!==o.pathname.charAt(0)&&(o.pathname="/"+o.pathname);var a=!n.protocol||":"===n.protocol||n.protocol===e.protocol,s=n.hostname===document.domain&&n.port===e.port;return o.sameOrigin=a&&(!n.hostname||s),"/"===o.pathname&&(r[t]=o),o}},{}],14:[function(t,n,e){function r(t,n){var e=t.responseType;return"json"===e&&null!==n?n:"arraybuffer"===e||"blob"===e||"json"===e?o(t.response):"text"===e||"document"===e||""===e||void 0===e?o(t.responseText):void 0}var o=t(16);n.exports=r},{}],15:[function(t,n,e){function r(){}function o(t,n,e){return function(){return i(t,[f.now()].concat(s(arguments)),n?null:this,e),n?void 0:this}}var i=t("handle"),a=t(21),s=t(22),c=t("ee").get("tracer"),f=t("loader"),u=NREUM;"undefined"==typeof window.newrelic&&(newrelic=u);var d=["setPageViewName","setCustomAttribute","setErrorHandler","finished","addToTrace","inlineHit","addRelease"],l="api-",p=l+"ixn-";a(d,function(t,n){u[n]=o(l+n,!0,"api")}),u.addPageAction=o(l+"addPageAction",!0),u.setCurrentRouteName=o(l+"routeName",!0),n.exports=newrelic,u.interaction=function(){return(new r).get()};var h=r.prototype={createTracer:function(t,n){var e={},r=this,o="function"==typeof n;return i(p+"tracer",[f.now(),t,e],r),function(){if(c.emit((o?"":"no-")+"fn-start",[f.now(),r,o],e),o)try{return n.apply(this,arguments)}catch(t){throw c.emit("fn-err",[arguments,this,t],e),t}finally{c.emit("fn-end",[f.now()],e)}}}};a("actionText,setName,setAttribute,save,ignore,onEnd,getContext,end,get".split(","),function(t,n){h[n]=o(p+n)}),newrelic.noticeError=function(t,n){"string"==typeof t&&(t=new Error(t)),i("err",[t,f.now(),!1,n])}},{}],16:[function(t,n,e){n.exports=function(t){if("string"==typeof t&&t.length)return t.length;if("object"==typeof t){if("undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer&&t.byteLength)return t.byteLength;if("undefined"!=typeof Blob&&t instanceof Blob&&t.size)return t.size;if(!("undefined"!=typeof FormData&&t instanceof FormData))try{return JSON.stringify(t).length}catch(n){return}}}},{}],17:[function(t,n,e){var r=0,o=navigator.userAgent.match(/Firefox[/s](d+.d+)/);o&&(r=+o[1]),n.exports=r},{}],18:[function(t,n,e){function r(t,n){var e=t.getEntries();e.forEach(function(t){"first-paint"===t.name?c("timing",["fp",Math.floor(t.startTime)]):"first-contentful-paint"===t.name&&c("timing",["fcp",Math.floor(t.startTime)])})}function o(t,n){var e=t.getEntries();e.length>0&&c("lcp",[e[e.length-1]])}function i(t){if(t instanceof u&&!l){var n,e=Math.round(t.timeStamp);n=e>1e12?Date.now()-e:f.now()-e,l=!0,c("timing",["fi",e,{type:t.type,fid:n}])}}if(!("init"in NREUM&&"page_view_timing"in NREUM.init&&"enabled"in NREUM.init.page_view_timing&&NREUM.init.page_view_timing.enabled===!1)){var a,s,c=t("handle"),f=t("loader"),u=NREUM.o.EV;if("PerformanceObserver"in window&&"function"==typeof window.PerformanceObserver){a=new PerformanceObserver(r),s=new PerformanceObserver(o);try{a.observe({entryTypes:["paint"]}),s.observe({entryTypes:["largest-contentful-paint"]})}catch(d){}}if("addEventListener"in document){var l=!1,p=["click","keydown","mousedown","pointerdown","touchstart"];p.forEach(function(t){document.addEventListener(t,i,!1)})}}},{}],19:[function(t,n,e){function r(){function t(){return n?15&n[e++]:16*Math.random()|0}var n=null,e=0,r=window.crypto||window.msCrypto;r&&r.getRandomValues&&(n=r.getRandomValues(new Uint8Array(31)));for(var o,i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",a="",s=0;s<i.length;s++)o=i[s],"x"===o?a+=t().toString(16):"y"===o?(o=3&t()|8,a+=o.toString(16)):a+=o;return a}function o(){function t(){return n?15&n[e++]:16*Math.random()|0}var n=null,e=0,r=window.crypto||window.msCrypto;r&&r.getRandomValues&&Uint8Array&&(n=r.getRandomValues(new Uint8Array(31)));for(var o=[],i=0;i<16;i++)o.push(t().toString(16));return o.join("")}n.exports={generateUuid:r,generateCatId:o}},{}],20:[function(t,n,e){function r(t,n){if(!o)return!1;if(t!==o)return!1;if(!n)return!0;if(!i)return!1;for(var e=i.split("."),r=n.split("."),a=0;a<r.length;a++)if(r[a]!==e[a])return!1;return!0}var o=null,i=null,a=/Version/(S+)s+Safari/;if(navigator.userAgent){var s=navigator.userAgent,c=s.match(a);c&&s.indexOf("Chrome")===-1&&s.indexOf("Chromium")===-1&&(o="Safari",i=c[1])}n.exports={agent:o,version:i,match:r}},{}],21:[function(t,n,e){function r(t,n){var e=[],r="",i=0;for(r in t)o.call(t,r)&&(e[i]=n(r,t[r]),i+=1);return e}var o=Object.prototype.hasOwnProperty;n.exports=r},{}],22:[function(t,n,e){function r(t,n,e){n||(n=0),"undefined"==typeof e&&(e=t?t.length:0);for(var r=-1,o=e-n||0,i=Array(o<0?0:o);++r<o;)i[r]=t[n+r];return i}n.exports=r},{}],23:[function(t,n,e){n.exports={exists:"undefined"!=typeof window.performance&&window.performance.timing&&"undefined"!=typeof window.performance.timing.navigationStart}},{}],ee:[function(t,n,e){function r(){}function o(t){function n(t){return t&&t instanceof r?t:t?c(t,s,i):i()}function e(e,r,o,i){if(!l.aborted||i){t&&t(e,r,o);for(var a=n(o),s=m(e),c=s.length,f=0;f<c;f++)s[f].apply(a,r);var d=u[y[e]];return d&&d.push([x,e,r,a]),a}}function p(t,n){g[t]=m(t).concat(n)}function h(t,n){var e=g[t];if(e)for(var r=0;r<e.length;r++)e[r]===n&&e.splice(r,1)}function m(t){return g[t]||[]}function w(t){return d[t]=d[t]||o(e)}function v(t,n){f(t,function(t,e){n=n||"feature",y[e]=n,n in u||(u[n]=[])})}var g={},y={},x={on:p,addEventListener:p,removeEventListener:h,emit:e,get:w,listeners:m,context:n,buffer:v,abort:a,aborted:!1};return x}function i(){return new r}function a(){(u.api||u.feature)&&(l.aborted=!0,u=l.backlog={})}var s="nr@context",c=t("gos"),f=t(21),u={},d={},l=n.exports=o();l.backlog=u},{}],gos:[function(t,n,e){function r(t,n,e){if(o.call(t,n))return t[n];var r=e();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(t,n,{value:r,writable:!0,enumerable:!1}),r}catch(i){}return t[n]=r,r}var o=Object.prototype.hasOwnProperty;n.exports=r},{}],handle:[function(t,n,e){function r(t,n,e,r){o.buffer([t],r),o.emit(t,n,e)}var o=t("ee").get("handle");n.exports=r,r.ee=o},{}],id:[function(t,n,e){function r(t){var n=typeof t;return!t||"object"!==n&&"function"!==n?-1:t===window?0:a(t,i,function(){return o++})}var o=1,i="nr@id",a=t("gos");n.exports=r},{}],loader:[function(t,n,e){function r(){if(!E++){var t=b.info=NREUM.info,n=p.getElementsByTagName("script")[0];if(setTimeout(u.abort,3e4),!(t&&t.licenseKey&&t.applicationID&&n))return u.abort();f(y,function(n,e){t[n]||(t[n]=e)}),c("mark",["onload",a()+b.offset],null,"api");var e=p.createElement("script");e.src="https://"+t.agent,n.parentNode.insertBefore(e,n)}}function o(){"complete"===p.readyState&&i()}function i(){c("mark",["domContent",a()+b.offset],null,"api")}function a(){return O.exists&&performance.now?Math.round(performance.now()):(s=Math.max((new Date).getTime(),s))-b.offset}var s=(new Date).getTime(),c=t("handle"),f=t(21),u=t("ee"),d=t(20),l=window,p=l.document,h="addEventListener",m="attachEvent",w=l.XMLHttpRequest,v=w&&w.prototype;NREUM.o={ST:setTimeout,SI:l.setImmediate,CT:clearTimeout,XHR:w,REQ:l.Request,EV:l.Event,PR:l.Promise,MO:l.MutationObserver};var g=""+location,y={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",agent:"js-agent.newrelic.com/nr-1167.min.js"},x=w&&v&&v[h]&&!/CriOS/.test(navigator.userAgent),b=n.exports={offset:s,now:a,origin:g,features:{},xhrWrappable:x,userAgent:d};t(15),t(18),p[h]?(p[h]("DOMContentLoaded",i,!1),l[h]("load",r,!1)):(p[m]("onreadystatechange",o),l[m]("onload",r)),c("mark",["firstbyte",s],null,"api");var E=0,O=t(23)},{}],"wrap-function":[function(t,n,e){function r(t){return!(t&&t instanceof Function&&t.apply&&!t[a])}var o=t("ee"),i=t(22),a="nr@original",s=Object.prototype.hasOwnProperty,c=!1;n.exports=function(t,n){function e(t,n,e,o){function nrWrapper(){var r,a,s,c;try{a=this,r=i(arguments),s="function"==typeof e?e(r,a):e||{}}catch(f){l([f,"",[r,a,o],s])}u(n+"start",[r,a,o],s);try{return c=t.apply(a,r)}catch(d){throw u(n+"err",[r,a,d],s),d}finally{u(n+"end",[r,a,c],s)}}return r(t)?t:(n||(n=""),nrWrapper[a]=t,d(t,nrWrapper),nrWrapper)}function f(t,n,o,i){o||(o="");var a,s,c,f="-"===o.charAt(0);for(c=0;c<n.length;c++)s=n[c],a=t[s],r(a)||(t[s]=e(a,f?s+o:o,i,s))}function u(e,r,o){if(!c||n){var i=c;c=!0;try{t.emit(e,r,o,n)}catch(a){l([a,e,r,o])}c=i}}function d(t,n){if(Object.defineProperty&&Object.keys)try{var e=Object.keys(t);return e.forEach(function(e){Object.defineProperty(n,e,{get:function(){return t[e]},set:function(n){return t[e]=n,n}})}),n}catch(r){l([r])}for(var o in t)s.call(t,o)&&(n[o]=t[o]);return n}function l(n){try{t.emit("internal-error",n)}catch(e){}}return t||(t=o),e.inPlace=f,e.flag=a,e}},{}]},{},["loader",2,12,4,3]);
{{ 'product.bundled_products.label' | translate }}
{{ 'product.bundle_group_products.label' | translate }}
{{ 'product.gift.label' | translate }}
{{ 'product.addon_products.label' | translate }}
{{item.product.title_translations|translateModel}}
{{ field.name_translations | translateModel }}
{{item.variation.name}}
{{item.quantity}}x
{{ item.unit_point }} 點
{{ 'product.addon_products.label' | translate }}
{{addonItem.product.title_translations|translateModel}}
{{addonItem.quantity}}x
{{ mainConfig.merchantData.base_currency.alternate_symbol + "0" }}
<div ng-hide="state.loading || pagination.total
window.resizeImages();
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-52VJNQJ');
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments)};
gtag('js', new Date());
gtag('config', 'AW-826414409');
// detect event tag
// set tracking data
gtag('event', 'other', {"ecomm_pagetype":"other"});
!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
document,'script','//connect.facebook.net/en_US/fbevents.js');
fbq('init', '205215116655033', {
em: 'michael830317@yahoo.com.tw',
ph: '0925382945',
fn: 'Ray Chou'
}, {agent: 'plShopline'});
fbq('track', 'PageView',{
}, {
agent: 'plShopline'
});
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments)};
gtag('js', new Date());
gtag('config', 'AW-657982200');
gtag('event', 'conversion', { 'send_to': 'AW-657982200' });
if (!window.scriptQueue) {window.scriptQueue = [];};
window.scriptQueue.push(function() {
/* title primary */$('.js-title-page').each(function() { if(!$(this).prev().length) { if($(this).siblings('.js-content-page').text().trim().length) { $(this).parent().addClass('primary-bg-title-color'); if($(this).closest('.Grid-row-wrapper').next().hasClass('m-remove-padding')) { $(this).closest('.Grid-row').addClass('no-margin'); } } else { $(this).addClass('primary-title-color'); } }});/* check IOS */var iOS = is.ios();var iOS11 = /OS 11_0|OS 11_1|OS 11_2/.test(navigator.userAgent);var detectTap = false;if (iOS && iOS11) { $('body').addClass('ios-eleven');}/* location when click in IOS */if (iOS) { $('body').addClass('ios');}/* hover next image */angular.element(document).ready(function () { function isQuickCartProduct(imageClass) { return imageClass === '.js-boxify-image'; } function hoverProductEffect(imageClass) { var elements; elements = isQuickCartProduct(imageClass) ? $('product-item') : $('.Product-item'); elements.each(function() { var $this; $this = isQuickCartProduct(imageClass) ? $(this).children().first() : $(this); var secondCoverImage = $this.find('.second-image'); if (secondCoverImage.length === 0) { return; } var multiImageWrapper; multiImageWrapper = isQuickCartProduct(imageClass) ? $this.find('.js-quick-boxify-wrapper') : $this; multiImageWrapper.addClass('multi-image'); }); } function loadEffect() { /* product items without quick cart feature */ hoverProductEffect('.js-image-boxify-image'); /* product items with quick cart feature */ hoverProductEffect('.js-boxify-image'); } loadEffect(); /* observe pagination changes in multiple category widgets */ $('.product-items-container').each(function(index, productItemsContainer) { var config = { childList: true, }; var observer = new MutationObserver(function(mutations) { loadEffect(); }); observer.observe(productItemsContainer, config); });});/* fix single product widget as category product widget */$('.page-single-product').each(function() { if ($(this).parent().index() == 0) { $(this).closest('.Grid-row').addClass('single-product'); }});/* adjust number slide for owl carousel */$('carousel-display').on('initialized.owl.carousel', '.owl-carousel', function() { $('.owl-carousel').on('change.owl.carousel', function(e) { var num = $('.owl-item:not(.cloned)', this).length; var index = 1; if (e.item.count == 2) { index = ( 1 + ( e.property.value + 1 - Math.ceil( e.item.count / 2 ) ) % e.item.count || 0 ) || 1; } else { index = ( 1 + ( e.property.value - Math.ceil( e.item.count / 2 ) ) % e.item.count || 0 ) || 1; } $(this).attr('data-slide', index + ' / ' + num); });});app.run([ '$rootScope', '$timeout', 'modalTypes', function( $rootScope, $timeout, modalTypes ) { $rootScope.$on('modal.open', function(event, payload) { if (payload.modalType !== modalTypes.QUICK_CART) return; $timeout(function() { $('.js-variant-gallery-stage').append('
'); var urlLoad = $('.js-variant-gallery-stage > a > img').attr('src'); checkImage(urlLoad); var selected = 1; var urlGallery = ''; $('.js-view-next').click(function() { selected++; if ($('.modal .js-variant-image').length a > img').attr('src', changeAttr($('.modal .js-variant-image:nth-child(' + selected + ') .image-container'))); }); $('.js-view-prev').click(function() { selected--; if (selected a > img').attr('src', changeAttr($('.modal .js-variant-image:nth-child(' + selected + ') .image-container'))); }); function changeAttr(el) { var linkProduct = el.attr('style').replace(/"/g, '').replace(/ /g, '').replace('thumb', 'original'); var handleLeft = linkProduct.slice(linkProduct.indexOf('http'));; var handleRight; if (handleLeft.lastIndexOf(';') === handleLeft.length - 1) { handleRight = handleLeft.slice(0, handleLeft.length - 2); } else { handleRight = handleLeft.slice(0, handleLeft.length - 1); } return handleRight; } /* move up notice on button */ function moveNotice(el) { $(el).each(function() { var notice = $(this).detach(); notice.insertBefore($('.product-variant-option > button')); }); }; moveNotice('.js-popup-not-enough-stock'); moveNotice('.js-popup-item-left'); var list = document.querySelector('.quick-cart-body .product-info'); var config = { childList: true, }; var observer; observer = new MutationObserver(function(mutations) { moveNotice('.js-popup-purchase-limit'); }); observer.observe(list, config); $('.modal .quick-cart-price .price').each(function() { if($(this).text().trim() === '') { $(this).addClass('price-empty'); } }); fixSelect(); }, 200); function checkImage(url) { var img = new Image(); img.src = url; img.onload = function() { if (this.height > this.width) { $('.js-variant-gallery-stage > a > img').addClass('img-height'); } else { $('.js-variant-gallery-stage > a > img').removeClass('img-height'); } }; }; });}]);/* close popup product when click mask */$(document).on('touchend', '.modal-backdrop', function() { $('.js-quick-cart-cancel').click();});/* add class scroll for go to top button */function scrollPage() { if ($(window).scrollTop() >= 100) { $('.sl-goto-top').addClass('active'); } else { $('.sl-goto-top').removeClass('active'); }}$(window).on('scroll', _.throttle(scrollPage, 200));$('.instagram-post .caption').dotdotdot({ wrap: 'letter', ellipsis: '...', height: 56});$(window).load(function() { fixSelect();});/* change style select box */function fixSelect() { $('.js-selectpicker').each(function() { if ($(this).is(':visible')) { $(this).parent().addClass('selectpicker-box'); } });}
});
window.scriptQueue.push(function() {
function initSubmenu(openSel, closeSel, menuName) { $(openSel).sidr(new SidrOptions({ name: menuName })); $(openSel).off(); /* remove click event handler from sidr */ $('body').on('click.' + menuName, openSel, function(e) { $.sidr('close', 'MenuPanel', function() { $.sidr('open', menuName); $('.sl-modal-mask').css({ 'display': 'block', 'opacity': 0.3 }); }); }); $('body').on('click.' + menuName, closeSel, function(e) { $.sidr('close', menuName, function() { $.sidr('open', 'MenuPanel'); }); }); $('.sl-modal-mask').on('click', function() { $.sidr('close', menuName); });}initSubmenu('.sl-language-menu-open', '.sl-language-menu-close', 'LanguagePanel');initSubmenu('.sl-currency-menu-open', '.sl-currency-menu-close', 'CurrencyPanel');/* sticky navigationbar */var hsticky = $('.js-sticky').innerHeight();$('.js-sticky').parent().css('height', hsticky);/* handle auto width and height sub navigation */function alignNavigation() { /* get dropdown max-height and item width */ var mhSubmenu = parseInt($('.js-nav-nestedlist-dropdown').css('max-height'), 0), mwSubmenu = parseInt($('.js-nav-nestedlist-dropdown').css('max-width'), 0), wItem = parseInt($('.js-nav-nestedlist-dropdown').css('width'), 0), totalItem = 0, wdWidth = $(window).width(), space = 80; $('.js-nav-nestedlist-dropdown').each(function() { var subMenu = $(this).next(); /* reset height all item */ totalItem = 0; $('li', this).each(function() { /* get total item height */ totalItem += $(this).height(); }); var wList = 0; if (totalItem > mhSubmenu) { /* if total item height > max-hieght dropdown */ if (totalItem % mhSubmenu != 0) { /* if submenu is odd, set width submenu = (result + 1) * item width */ wList = (Math.floor(totalItem / mhSubmenu) + 1) * wItem; } else { /* if submenu is even, set width submenu = result * item width */ wList = (totalItem / mhSubmenu) * wItem; } } else { wList = wItem; } $(this).css('width', wList); subMenu.css({ 'width': wList, 'height': $(this).height() }); var os = $(this).offset().left; if (wList > mwSubmenu) { /* align center submenu */ $(this).css('margin-left', - (mwSubmenu / 2) + ($(this).parent().width() / 2)); subMenu.css('margin-left', - (mwSubmenu / 2) + ($(this).parent().width() / 2)); /* handle scroll submenu */ subMenu.removeClass('disable'); subMenu.find('.sub-next').removeClass('sub-disable'); } else { if (wList > 2 * wItem) { /* align center if submenu is small */ $(this).css('margin-left', - (wList / 2) + ($(this).parent().width() / 2)); subMenu.css('margin-left', - (wList / 2) + ($(this).parent().width() / 2)); } } /* compare to margin-left >= space default */ if ($(this).offset().left = space default */ if ($(this).offset().left + $(this).width() > wdWidth - space - 20) { $(this).css('margin-left', - (os + $(this).width() - wdWidth + space + 20)); subMenu.css('margin-left', - (os + $(this).width() - wdWidth + space + 20)); } });}alignNavigation();/* scroll submenu*/$(document).on('click', '.sub-prev', function() { var tempLeft = $(this).parent().prev().scrollLeft(); $(this).parent().prev().animate({ scrollLeft: tempLeft - 800 });});$(document).on('click', '.sub-next', function() { var tempLeft = $(this).parent().prev().scrollLeft(); $(this).parent().prev().animate({ scrollLeft: tempLeft + 800 });});function scrollSubmenu(submenu) { var subMenu = submenu.next(); if (submenu.scrollLeft() + submenu.width() == submenu.get(0).scrollWidth) { subMenu.find('.sub-next').addClass('sub-disable'); } else { subMenu.find('.sub-next').removeClass('sub-disable'); } if (submenu.scrollLeft() == 0) { subMenu.find('.sub-prev').addClass('sub-disable'); } else { subMenu.find('.sub-prev').removeClass('sub-disable'); }}$('.js-nav-nestedlist-dropdown').on('scroll', _.throttle(function() { scrollSubmenu($(this)); }, 200));/* check scroll */function checkScroll() { if ($(window).scrollTop() > 200) { $('body').addClass('my-scroll'); } else { $('body').removeClass('my-scroll'); }}checkScroll();$(window).scroll(function() { checkScroll();});/* toggle search bar */var search = $('.js-product-searchfield-form').detach();$('body').append(search);$('.js-menu-search').on('click', function() { $('.js-product-searchfield-form').addClass('active'); /* $('.sl-modal-mask').css({ 'opacity': '0.3', 'display': 'block' }); $('.js-navigationbar-mobile').css({ 'z-index': 999999 }); */ $('.sl-modal-mask').css({ 'opacity': '0.6', 'display': 'block' });});$('.sl-modal-mask').on('click', function() { $('.js-product-searchfield-form').removeClass('active'); $('.js-navigationbar-mobile').removeAttr('style');});
});
window.scriptQueue.push(function() {
var $mask = $('
');var hHeader;hHeader = $('.js-sticky').height();/* add top css for cart panel */$('head').append('#cart-panel { top: ' + hHeader + 'px; }');function setHeaderTop() { hHeader = $('.js-sticky').height(); if ($(window).scrollTop() >= 200) { $('.js-product-thumb, .js-product-info').css('top', hHeader); } else { $('.js-product-thumb, .js-product-info').removeAttr('style'); } $('head #fix-cart').html('#cart-panel { top: ' + hHeader + 'px; }');};$(window).on('load', setHeaderTop);$(window).on('scroll', _.throttle(setHeaderTop, 200));/* call sidr for cart panel */$('.js-cart-panel').unbind();$('.sl-cart-toggle').sidr(new SidrOptions({ name: 'cart-panel', onOpen: function() { $('.js-cart-panel').addClass('is-open'); $mask.css({'display': 'block' }); angular.element('body').scope().$broadcast('cart.reload'); }, onClose: function() { $('.js-cart-panel').removeClass('is-open'); $mask.css({'display': 'none'}); }}));$mask .appendTo('body') .on('click', function() { $.sidr('close', 'cart-panel'); $mask.css({'display': 'none'}); });/* auto close cart panel in 3 second if no hover */if (!is.touchDevice()) { var keepCart; var cartPanel = document.querySelector('.js-cart-panel'); $(document).on('click', '.js-btn-add-to-cart, .js-btn-quick-cart-add-to-cart', function() { var observer = (new MutationObserver(function() { keepCart = setTimeout(function() { $.sidr('close', 'cart-panel'); $mask.css({'display': 'none'}); }, 3000); observer.disconnect(); })); observer.observe( cartPanel, { attributes: true } ); }); /* keep cart panel if hover */ cartPanel.addEventListener('mouseover', function() { clearTimeout(keepCart); });}/* close currency and menu panel when choose currency */$('.sl-currency-chooser-currency').on('click', function() { $.sidr('close', 'CurrencyPanel'); $.sidr('close', 'MenuPanel'); $('.sl-modal-mask').css({'display': 'none'});});/* adjust cart panel in short browser*/function adjustCartPanel() { var vh = window.innerHeight; if (window.matchMedia('(max-height: 600px)').matches) { var height = vh - $('.js-navigationbar-desktop').height() - 45; $('#cart-panel .cart-items').css('max-height', height); } else { $('#cart-panel .cart-items').css('max-height', ''); }};if (window.matchMedia('(min-width: 1200px)').matches) { adjustCartPanel(); $(window).on('resize', _.debounce(function() { adjustCartPanel(); }, 250)); }
});
window.scriptQueue.push(function() {
$('.js-productlist-nestedlist').on('click', function(event) { if(!$(event.target).is('a.Label')) { var target = $(this).find('.ProductList-nestedList-dropdown'); if (target.is(':visible')) { target.slideUp(); $(this).removeClass('active'); } else { target.slideDown(); $(this).addClass('active'); } }});$('.js-productlist-nestedlist.second-layer-content').hover(function() { var thirdLayer = $(this).find('.NestedList-Wrapper.js-productlist-nestedlist-dropdown'); if ($(this).attr('is-collapsed') === 'true') { $('ul:not(:animated)', this).slideDown(); } /* move 3rd layer up when it longer than the screen */ if (thirdLayer.length !== 0) { var bottom3rdLayer = thirdLayer.offset().top + thirdLayer.outerHeight(); var scrollBotWindow = $(window).scrollTop() + $(window).height(); if (bottom3rdLayer >= scrollBotWindow) { thirdLayer.css({'top': scrollBotWindow - bottom3rdLayer - 30 + 'px'}); } }}, function() { var thirdLayer = $(this).find('.NestedList-Wrapper.js-productlist-nestedlist-dropdown'); if ($(this).attr('is-collapsed') === 'true') { $('ul', this).slideUp(); } thirdLayer.removeAttr("style");});/* custom select box for sort */if ($('.js-setting-sort li.active').length) { $('.js-setting-sort span').text($('.js-setting-sort li.active').text());}if ($('.js-setting-filter li.active').length) { $('.js-setting-filter span').text($('.js-setting-filter li.active').text());}if ($('.js-setting-limit li.active').length) { $('.js-setting-limit span').text($('.js-setting-limit li.active').text());}$('.js-setting-sort li').each(function() { $(this).click(function() { $(this).closest('.js-setting-sort').find('span').text($(this).text()); $('.sl-products-sorting').val($(this).data('value')).trigger('change'); });});$('.js-setting-filter li').each(function() { $(this).click(function() { $(this).closest('.js-setting-filter').find('span').text($(this).text()); $('.sl-products-filter').val($(this).data('value')).trigger('change'); });});$('.js-setting-limit li').each(function() { $(this).click(function() { $(this).closest('.js-setting-limit').find('span').text($(this).text()); $('.sl-products-limit').val($(this).data('value')).trigger('change'); });});$('.setting-limit'). on('click', 'li', function(){ console.log('123'); $('.sl-products-limit').val($(this).data('value')).trigger('change');});/* arrow icon should be hidden if category has no subcategories */$('.js-productlist-nestedlist, .js-mobile-productlist-nestedlist').each(function(category) { var targetList = $(this).is('.js-productlist-nestedlist') ? '.js-productlist-nestedlist' : '.js-mobile-productlist-nestedlist'; var $subcategory = $(this).find(targetList + '-dropdown'); var subcategoryCount = $subcategory.children().length; if(subcategoryCount === 0) { $(this).find('.fa').remove(); $(this).removeClass('ProductList-nestedList js-productlist-nestedlist MenuPanel-nestedList sl-dropdown'); $subcategory.remove(); }});
});
window.scriptQueue.push(function() {
/* set background for post */$('.js-posts-excerpt').each(function() { if ($('img', this).length) { var url = $('img', this).attr('src'); $(this).empty().css('background-image', 'url(' + url + ')'); } else { $(this).empty().css('background-image', 'url(https://shoplineimg.com/5b457f3210abb98a4d0028f7/5c41b52d41652b000f9be4ad/800x.jpg)'); }});/* change style for first post */var content = $('.js-posts-list:first-child .js-posts-text').detach();$('.js-posts-list:first-child .js-posts-txt').append(content);/* dotdotdot */$(window).on('load resize', function() { var wWidth = $(window).width(); if (wWidth >= 480) { $('.js-posts-list').each(function() { if ($(this).index() == 0) { $('.js-posts-title', this).dotdotdot({ wrap: 'letter', ellipsis: '...', height: 104 }); } else { $('.js-posts-title', this).dotdotdot({ wrap: 'letter', ellipsis: '...', height: 62 }); } }); } else { $('.js-posts-title').dotdotdot({ wrap: 'letter', ellipsis: '...', height: 62 }); }});$('.js-posts-text').dotdotdot({ wrap: 'letter', ellipsis: '...', height: 75});
});
window.scriptQueue.push(function() {
$( document ).ready(function() { setTimeout(function() { $('.PromotionCart-content .cart-item-container').each(function() { $(this).find('.remove-button').empty(); $(this).find('.remove-button').append('
'); }); }, 500);});function changeIcon(oldIcon, newIcon) { oldIcon.each(function() { $(this).html(newIcon); });}changeIcon($('.PromotionCart-content .product-content .input-group-btn:first-child > .btn'), '');changeIcon($('.PromotionCart-content .product-content .input-group-btn:last-child > .btn'), '');
});
window.scriptQueue.push(function() {
/* add class to style scroll */$('.js-tabset-tabs').wrap('
');
});
window.scriptQueue.push(function() {
function collapseThirdLayer(currentDOM) { $('.menu-list-item.fa-angle-left').each(function() { if (this !== currentDOM){ toggleDropdown(this); } });}function assignDropdownID() { var index = 0; $('.NavigationBar-mainMenu .List-item').each(function() { index++; var $el = $(this); $el.attr('id', 'main-nav-list-' + index); var depth = _.reduce($el.parentsUntil('.NavigationBar-mainMenu').toArray(), function(acc, el) { var $current = $(el); if ($current.hasClass('NavigationBar-nestedList')) { $el.attr('data-parent-item', $current.attr('id')); return acc + 1; } else { return acc; } }, 0); $el.addClass('depth-' + depth); });}function assignMobileDropdownID() { var index = 0; $('.MenuPanel-mainMenu .List-item').each(function(){ index++; var $el = $(this); $el.attr('id', 'main-menu-list-' + index); var depth = _.reduce($el.parentsUntil('.MenuPanel-mainMenu').toArray(), function(acc, el) { var $current = $(el); if ($current.hasClass('MenuPanel-nestedList')) { $el.attr('data-parent-item', $current.attr('id')); return acc + 1; } else { return acc; } }, 0); $el.addClass('depth-' + depth); });}function assignDropdownFunction(){ $('.NavigationBar-mainMenu').on('click', 'i.menu-list-item', function() { toggleDropdown(this); if ($(this).hasClass('fa-angle-left')) { handleUIScrollThirdLayer($(this)); } });}function handleUIScrollThirdLayer(btnClickOpen3Layer) { var hSecondLayer = btnClickOpen3Layer.closest('.js-nav-nestedlist-dropdown').height(); var hThirdLayer = 0; btnClickOpen3Layer.nextAll('.NavigationBar-nestedList-expand').eq(0).find('li').each(function(index, item) { hThirdLayer += $(item).height(); }); if ((hThirdLayer > hSecondLayer) && (!btnClickOpen3Layer.nextAll('.NavigationBar-nestedList-expand').eq(0).hasClass('scroll-third-layer'))) { btnClickOpen3Layer.nextAll('.NavigationBar-nestedList-expand').eq(0).addClass('scroll-third-layer'); }}function calculateCSSByTargetHeight(target, dropdownIdentifer, toggle) { var $dropdown = ('.List-item#' + dropdownIdentifer + ' > .js-nav-nestedlist-dropdown'); var maxWidth = parseInt($($dropdown).css('max-width'), 0); var currentHeight = $($dropdown).height(); var foundFlag = false; var totalHeight = 0; var targetHeight = 0; var rowNum = 0; var targetWidth = 0; var totalWidth = 0; var rowWidth = $($dropdown + '> li').outerWidth(); $($dropdown + '> li').each(function() { if ((totalHeight + $(this).height()) > currentHeight) { totalHeight = $(this).height(); rowNum += 1; } else { totalHeight += $(this).height(); } totalWidth = (rowNum + 1) * rowWidth; if (!foundFlag) { targetHeight = totalHeight; targetWidth = totalWidth; } hideItemOfColumnAfterTargetColumn(this, targetWidth, totalWidth); if (this.id === target) { targetHeight -= $(this).height(); foundFlag = true; if (!$($dropdown).next().hasClass('disable')) { $($dropdown).next().addClass('disable'); } } }); if (targetWidth > maxWidth) { if($($dropdown).next().hasClass('disable')) { $($dropdown).next().removeClass('disable'); } }; controlDropdownHeight(targetWidth, rowWidth, dropdownIdentifer, currentHeight); return {'targetWidth': targetWidth, 'targetHeight': targetHeight, 'foundFlag': foundFlag};}function controlDropdownHeight(targetWidth, rowWidth, dropdownIdentifer, currentHeight) { var $dropdown = ('.List-item#' + dropdownIdentifer + ' > .js-nav-nestedlist-dropdown'); if (targetWidth > rowWidth) { $('.NavigationBar-nestedList-expand').css('max-height',$($dropdown).height()); } $($dropdown).css('height', currentHeight); $($dropdown).next().css('height', currentHeight);}function hideItemOfColumnAfterTargetColumn(caller, targetWidth, totalWidth) { if (targetWidth .js-nav-nestedlist-dropdown' + '> li').length; if (caller.classList.contains('fa-angle-right')) { return calculateCSSByTargetHeight($(caller).parent()[0].id, dropdownIdentifer); } else{ return calculateCSSByTargetHeight(lastItemID, dropdownIdentifer); };}function toggleDropdown(caller) { if ($(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).hasClass('collapsing')) { return; } collapseThirdLayer(caller); var dropdownIdentifer = $(caller).parent().attr('data-parent-item'); var $dropdown = ('.List-item#' + dropdownIdentifer + ' > .js-nav-nestedlist-dropdown'); var maxWidth = parseInt($($dropdown).css('max-width'), 0); var lastItemID = $($dropdown).length; var rowWidth = $($dropdown + '> li').outerWidth(); var targetWidth = calulateSecondLayerCSSAfterClick(caller)['targetWidth']; var top = calulateSecondLayerCSSAfterClick(caller)['targetHeight']; var foundFlag = calulateSecondLayerCSSAfterClick(caller)['foundFlag']; if (foundFlag) { targetWidth += rowWidth; } $(caller).toggleClass('fa-angle-left fa-angle-right'); changeThirdLayerCSS(caller, $dropdown, top); controlSecondLayerCSS(caller, $dropdown, targetWidth); scrollDropdownWhenManyColumns(targetWidth, maxWidth, $dropdown, foundFlag);}function changeThirdLayerCSS(caller, $dropdown, top) { $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).css('min-height', $($dropdown).height()); $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).collapse('toggle'); $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).css('top', -top);}function scrollDropdownWhenManyColumns(targetWidth, maxWidth, $dropdown, foundFlag) { if (targetWidth > maxWidth) { if (foundFlag) { var tempLeft = $($dropdown).scrollLeft(); $($dropdown).animate({ scrollLeft: tempLeft + (targetWidth - maxWidth) }); } else { /* To trigger scrollSubmenu in menu.js.liquid */ $($dropdown).scroll(); } }}function controlSecondLayerCSS(caller, $dropdown, targetWidth) { if ($($dropdown).height() < $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).height()) { $($dropdown).css('height', $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).height()); $($dropdown).next().css('height', $($dropdown).height()); } else { $($dropdown).css('height', ''); $($dropdown).next().css('height', $($dropdown).height()); } $($dropdown).next().css('width', targetWidth); $($dropdown).css('width', targetWidth); var callerData = $(caller)[0].getBoundingClientRect(); var rightOffset = $(window).width() - callerData.right; if (rightOffset < 250 && $(caller).hasClass('fa-angle-left')) { $($dropdown).css({'left': rightOffset - 250}); } else { $($dropdown).css({'left': 0}); }}window.onload = function() { angular.element(document).ready(function() { assignDropdownID(); assignMobileDropdownID(); assignDropdownFunction(); $('.NavigationBar-mainMenu').on( 'mouseleave', '.depth-0', function() { collapseThirdLayer('empty'); }); $('.js-navbar-desktop').find('.NavigationBar-nestedList.depth-1').each(function() { $(this).children('a.Label').css({'padding-right': 0, 'max-width': 175}); }); function isQuickCartProduct(imageClass) { return imageClass === '.js-boxify-image'; } function hoverProductEffect(imageClass) { var elements; elements = isQuickCartProduct(imageClass) ? $('product-item') : $('.Product-item'); elements.each(function() { var $this; $this = isQuickCartProduct(imageClass) ? $(this).children().first() : $(this); var secondCoverImage = $this.find('.second-image'); if (secondCoverImage.length === 0) { return; } var multiImageWrapper; multiImageWrapper = isQuickCartProduct(imageClass) ? $this.find('.js-quick-boxify-image') : $this; multiImageWrapper.addClass('multi-image'); }); } function loadEffect() { /* product items without quick cart feature */ hoverProductEffect('.js-image-boxify-image'); /* product items with quick cart feature */ hoverProductEffect('.js-boxify-image'); } loadEffect(); /* observe pagination changes in multiple category widgets */ $('.product-items-container').each(function(index, productItemsContainer) { var config = { childList: true, }; var observer = new MutationObserver(function(mutations) { loadEffect(); }); observer.observe(productItemsContainer, config); }); });}
});
;
function toggleActiveClass(el, isActive) {
if (isActive) {
if (el.className.split(' ').indexOf('active') < 0) { el.className += ' active'; }
} else { el.className = el.className.replace(/ active/, ''); }
}
function findAncestor(el, cls) {
while ((el = el.parentElement) && !el.classList.contains(cls));
return el;
}
window.onTabsetTabClicked = function(event) {
if (event) {
var tab = event.target;
var target = tab.getAttribute('href').replace(/^#/, '');
var tabset = findAncestor(tab, 'Tabset');
[].forEach.call(
tabset.getElementsByClassName('Tab-label'),
function(t) { toggleActiveClass(t, t == tab); }
);
[].forEach.call(
tabset.getElementsByClassName('Tab-content'),
function(c) { toggleActiveClass(c, c.id == target); }
);
if (window.innerWidth < 768) {
var targetTab = document.getElementById(target)
if (targetTab && targetTab.getAttribute('scroll-to').length) {
var anchor = document.querySelector(targetTab.getAttribute('scroll-to'));
} else {
var anchor = tabset.firstElementChild;
}
var offset = parseInt(targetTab.getAttribute('scroll-offset'), 10) || 0;
window.scrollTo( 0, anchor.getBoundingClientRect().top - document.body.getBoundingClientRect().top - offset );
}
}
}