Spring Sale Promotion Up to 30% off click here




Arisaka Type Side Offset Scout Mount for 20mm Rails

$9.65
$20.00
Save 52%
people are viewing this right now
Description

An adapter for mounting on the side of a Picatinny standard handguard in combination with a Surefire Scout Light.

The flashlight shifts slightly upwards, making it less likely to get in the way of the support hand.

 

It corresponds to the following flashlights.

Surefire Scout Light M600 & M300 etc.

MODLIGHT PLH & OKW Weapon Light

Arisaka 300 & 600 series

Streamlight PROTAC rail mount 1, 2 etc.

Select product
Selected 0 item(s)
Black
Tan
function updateQueryStringParameter(uri, key, value) { if(!value) { return uri; } let re = new RegExp('([?&])' + key + '=.*?(&|$)', 'i'); let separator = uri.indexOf('?') !== -1 ? '&' : '?'; return uri.match(re) ? uri.replace(re, '$1' + key + '=' + value + '$2') : uri + separator + key + '=' + value; } function addEventListenerRedirect(data) { if (data.type === 'checkout_redirect_login') { let { pathname, search } = window.location; let order_id = data.order_id || ''; let newSearch = updateQueryStringParameter(search, 'order_id', order_id); let return_Url = `${pathname}${newSearch}`; let redirect_Url = `${data.url}?_returnUrl=${encodeURIComponent(return_Url)}`; return Promise.resolve(redirect_Url) } if (data.type === 'checkout_redirect') { return Promise.resolve(data.url); } if (data.type === 'checkout_reload') { let { pathname } = window.location; return Promise.resolve(pathname); } return Promise.reject({}); } function addEventListenerMask(data) { if (data.type === 'checkout_mask' && data.show_mask) { return Promise.resolve({}); } return Promise.reject({}); } function addEventListenerMaskClose(data) { if (data.type === 'checkout_mask' && !data.show_mask) { return Promise.resolve({}); } return Promise.reject({}); } function handleUpdateCheckout(data) { let message = { type:'theme_variant_list_update' } return Promise.resolve(message); } function addEventListeneFullFixed(data) { if (data.type === 'checkout_full_screen') { return Promise.resolve(data.is_full_screen); } return Promise.reject({}); } function addEventListenerTproduct(data) { if (data.type === 'checkout_kick_items') { return Promise.resolve(data); } return Promise.reject({}); } function handleCheckOrderIdChange(data) { if ((data.data && data.data.order_token) || data.order_id) { let new_order_token = (data.data && data.data.order_token) || data.order_id ; let checkout_iframe_template = document.getElementById('checkout_iframe_template'); let old_oder_token = checkout_iframe_template.getAttribute('data-order-id'); if (!old_oder_token) { checkout_iframe_template.setAttribute('data-order-id', new_order_token); } let isRerenderCheckout = new_order_token == old_oder_token; let obj = { order_id: new_order_token, once: isRerenderCheckout } if (!isRerenderCheckout) { checkout_iframe_template.setAttribute('data-order-id', new_order_token); } return Promise.resolve(obj); } return Promise.reject({}); } function addEventListeneScollToCheckout(data) { if (data.type === 'scroll_to_checkout') { return Promise.resolve(); } return Promise.reject({}); } function handleGetOrderInfo(data) { if (data.order_id) { let api = `/api/checkout/order/info?order_id=${data.order_id}`; return Promise.resolve(api); } return Promise.reject({}); } function handleToggleStickyCheckoutBtn(data) { if (data.type === 'checkout_submit_visible') { return Promise.resolve(!data.visible); } return Promise.reject({}); } function handleSetStickyCheckoutBtnDisabled(data) { if (data.type === 'checkout_submit_disable') { return Promise.resolve(data.disable); } return Promise.reject({}); } function stickyCheckoutBtnPostMessage(data) { let message = { type: 'theme_submit_click' } return Promise.resolve(message); } function handleShowChecktoutToast(data) { if (data.type === 'checkout_toast') { return Promise.resolve(data.message); } return Promise.reject({}); } exportFunction('handleGetOrderInfo', handleGetOrderInfo) exportFunction('handleCheckOrderIdChange', handleCheckOrderIdChange) exportFunction('addEventListenerRedirect', addEventListenerRedirect) exportFunction('addEventListenerMask', addEventListenerMask) exportFunction('addEventListenerMaskClose', addEventListenerMaskClose) exportFunction('handleUpdateCheckout', handleUpdateCheckout) exportFunction('addEventListeneFullFixed', addEventListeneFullFixed) exportFunction('addEventListenerTproduct', addEventListenerTproduct) exportFunction('addEventListeneScollToCheckout', addEventListeneScollToCheckout) exportFunction('handleToggleStickyCheckoutBtn', handleToggleStickyCheckoutBtn) exportFunction('handleSetStickyCheckoutBtnDisabled', handleSetStickyCheckoutBtnDisabled) exportFunction('stickyCheckoutBtnPostMessage', stickyCheckoutBtnPostMessage) exportFunction('handleShowChecktoutToast', handleShowChecktoutToast)
window.addEventListener('message', (e) => { const iframe = document.getElementById("checkout_iframe"); if(iframe && e.data && e.data.type === 'checkout_full_screen'){ if (e.data.is_full_screen) { iframe.setAttribute("scrolling", "auto") } else { iframe.setAttribute("scrolling", "no") }; } }); function handleSetObserver() { let iframeEle = document.getElementById('checkout_iframe'); var observer = new MutationObserver((mutations) => { let is_dom_change = false; mutations.forEach((item) => { if (item.type === 'childList') { is_dom_change = true; } }); const scrollHeight = iframeEle.contentWindow.document.body.scrollHeight; if (is_dom_change) { iframeEle.style.height = `${scrollHeight ? scrollHeight : 1400 }px`; } }); const options = { "childList" : true, "attributes" : false, "characterData" : false, "subtree" : true, "attributeOldValue" : false, "characterDataOldValue" : false }; iframeEle.contentWindow.addEventListener('DOMContentLoaded', function(e) { try { if (iframeEle.contentWindow.document.readyState === "interactive") { observer.observe(iframeEle.contentWindow.document, options); const iframe = document.getElementById("checkout_iframe"); iframe.addEventListener("load", function(e) { if (iframe.contentWindow.location.href.indexOf('thank_you') > -1) { window.location.href = iframe.contentWindow.location.href; } }); } } catch (err) {} }); } function handleAddListenerCheckoutIframe() { let checkout_iframe_render_elem = document.getElementById('checkout_iframe_render_1634493037563'); checkout_iframe_render_elem.addEventListener('spz:dom-update', (e) => { handleSetObserver(); }) } handleAddListenerCheckoutIframe();
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1711673738628').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);