Right to Carry

Federal Court Called ‘Reckless’ For Ruling Banning Handguns For 18-20 Year-Olds Is Unconstitutional

Reading Time: 2:30 min

A federal appeals court just delivered a significant win for the Second Amendment, ruling that the government cannot ban law-abiding 18-to-20-year-olds from purchasing handguns. Naturally, the gun control lobby is…

View post

Pennsylvania Senior Citizen Defends Wife and Home from Alleged Attacker

Reading Time: 2:23 min

It is a sorry state of affairs when children and the elderly are not immune to random violence, but that is the world we live in. More than ever, it…

View post

Florida Governor Proposes ‘Second Amendment Summer’ to Temporarily Eliminate Sales Taxes on Guns and Ammo

Reading Time: 2:24 min

Florida gun enthusiasts have a tax holiday on the horizon if Gov. Ron DeSantis (R) gets his way. Even as some governments attempt to fill their coffers with new taxes…

View post

Armed Fort Lauderdale Man Sends Alleged Home Invader to Hospital

Reading Time: 2:27 min

It is logical to believe that even a burglar would know when to cut his losses when confronted by an armed homeowner, but that is not always the case. Sometimes,…

View post

Surprise: Eight Wyoming Lawmakers Seek to Roll Back Second Amendment Protections

Reading Time: 2:21 min

Every gun enthusiast knows some states can be counted on to protect Second Amendment rights. Unfortunately, there are several others dominated by anti-gunners who want nothing more than to eradicate…

View post

NRA Lauds Interior Secretary’s Confirmation as a Win for Sporting Traditions

Reading Time: 2:21 min

Second Amendment advocates and outdoor enthusiasts are closely watching the changing of the guard in Washington, D.C., and many are pleased with at least one new face. The National Rifle…

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>