Right to Carry

Lawmakers Make Frivolous Attempt to Ban Glock Handguns in Illinois

Reading Time: 2:24 min

Anti-gunners in Illinois ramped up their attack on popular gunmaker Glock with a shocking bill that would ban these handguns entirely. It’s not enough that Chicago lawmakers sued the manufacturer…

View post

Nashville Woman Used Firearm to Protect Against Ex-Boyfriend When Protection Order Failed

Reading Time: 2:20 min

Restraining orders are often only as strong as the paper they are printed on. In many unfortunate situations, it is up to the victim to be their own protector and…

View post

Kansas Supreme Court Rules Against Suit Targeting Bass Pro Outdoor World and Baretta USA

Reading Time: 3:53 min

A traditional gunmaker and major firearm retailer emerged unscathed from a hazardous legal quagmire Friday. The Kansas Supreme Court ruled that Bass Pro Outdoor World and Baretta U.S.A. could not…

View post

House Leader Urges Significant Change to ATF Form 4473

Reading Time: 2:21 min

The Bureau of Alcohol, Tobacco, Firearms and Explosives (ATF) will be forced to change its Form 4473 if a prominent U.S. House leader gets his wish. Rep. Clay Higgins (R-LA)…

View post

Anti-Gunners Push for Background Checks for Gun Barrel Purchases in California

Reading Time: 2:26 min

California Lawmakers Push Yet Another Attack on Gun Rights No matter how embarrassingly obvious their tricks are to eradicate the Second Amendment, anti-gunners appear incapable of experiencing shame. That goes…

View post

Indiana Homeowner Defends Young Family from Alleged Violent Intruder

Reading Time: 2:28 min

Armed Father Protects Family from Late-Night Intruder Many believe there is currently a mental health crisis in the U.S., and indeed, there appears to be a surge in cases of…

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>