gun

Florida State University criminologist Gary Kleck

Reading Time: 0:20 min

Armed citizens defend their lives or property with firearms against criminals approximately 1 million times a year. In 98 percent of these instances, the citizen merely brandishes the weapon or…

View post

TAURUS FIRST 24 KIT

Reading Time: 1:3 min

I was browsing one of my favorite sites UNCRATE and came across the Taurus First 24 Kit.  I rarely find gun stuff on UNCRATE so it was cool to see…

View post

Audio From The Event Michael Bloomberg Is Trying To Block From Being Broadcast

Reading Time: 1:1 min

An audio recording of a talk former New York City mayor Michael Bloomberg has attempted to block from being broadcast has surfaced online. The full audio of the Feb. 6…

View post

Hugh Jackman Joins Anti-Gun, “Not One More” Campaign

Reading Time: 1:1 min

Honestly, I had no clue about the, “Not One More” campaign until I came across Hugh Jackman’s facebook post. Make no mistake, the “Not One More” Campaign is anti-gun. There’s…

View post

Armed customer stops restaurant robbery suspects in their tracks

Reading Time: 0:37 min

You hear it all the time from anti-gunners, “No one really uses their gun to stop a crime”. They love to insinuate that concealed carries suffer from Heroes complex. The…

View post

NOIR | Ep.18: Courtesy on the Range & in your Car, Pro Boxer Gary Russell, & I My Ass Kicked

Reading Time: 0:13 min

In this episode of NOIR, LaSorte gets on his soap box about having some courtesy while in your car and on the range. We do some shooting with professional boxer…

View post
<script>
  /*Source: https://github.com/Krzysztof-Antosik/Two-direction-Sticky-Sidebar*/
  
  // Verificar el ancho de pantalla al cargar y redimensionar
  function checkScreenWidth() {
    if (window.innerWidth <= 767) {
      // Si la pantalla es menor o igual a 676px, no ejecutar el código
      return;
    }

    const stickyElement = document.querySelector('.fb-sidebar__aside');
    const startPosition = stickyElement.getBoundingClientRect().top;

    let endScroll = window.innerHeight - stickyElement.offsetHeight - 500;
    let currPos = window.scrollY;
    let screenHeight = window.innerHeight;
    let stickyElementHeight = stickyElement.offsetHeight;
    let topGap = 40;
    let bottomGap = 40;

    setTimeout(() => {
      if (stickyElement.hasAttribute('data-top-gap')) {
        const dataTopGap = stickyElement.getAttribute('data-top-gap');
        topGap = dataTopGap === 'auto' ? startPosition : parseInt(dataTopGap);
      }

      if (stickyElement.hasAttribute('data-bottom-gap')) {
        bottomGap = parseInt(stickyElement.getAttribute('data-bottom-gap'));
      }
    }, 100);

    stickyElement.style.position = 'sticky';
    stickyElement.style.top = `${topGap}px`;
    stickyElement.style.height = 'fit-content';

    function positionStickySidebar() {
      endScroll = window.innerHeight - stickyElement.offsetHeight - bottomGap;
      const stickyElementTop = parseInt(stickyElement.style.top.replace('px', ''));

      if (stickyElementHeight + topGap + bottomGap > screenHeight) {
        if (window.scrollY < currPos) {
          if (stickyElementTop < topGap) {
            stickyElement.style.top = `${stickyElementTop + currPos - window.scrollY}px`;
          } else if (stickyElementTop >= topGap && stickyElementTop !== topGap) {
            stickyElement.style.top = `${topGap}px`;
          }
        } else {
          if (stickyElementTop > endScroll) {
            stickyElement.style.top = `${stickyElementTop + currPos - window.scrollY}px`;
          } else if (stickyElementTop < endScroll && stickyElementTop !== endScroll) {
            stickyElement.style.top = `${endScroll}px`;
          }
        }
      } else {
        stickyElement.style.top = `${topGap}px`;
      }
      currPos = window.scrollY;
    }

    function stickyElementToMe() {
      stickyElement.style.top = `${topGap}px`;
    }

    function updateSticky() {
      screenHeight = window.innerHeight;
      stickyElementHeight = stickyElement.offsetHeight;
      positionStickySidebar();
    }

    setTimeout(() => {
      window.addEventListener('resize', () => {
        currPos = window.scrollY;
        updateSticky();
      });

      document.addEventListener('scroll', updateSticky, {
        capture: true,
        passive: true
      });
    }, 1000);
  }

  // Verificar el ancho de pantalla al cargar y redimensionar
  window.addEventListener('load', checkScreenWidth);
  window.addEventListener('resize', checkScreenWidth);
</script>