CINXE.COM
Gun Safety | California Governor's Office of Emergency Services
<!DOCTYPE html> <html class="no-js" lang="en"> <head> <title>Gun Safety | California Governor's Office of Emergency Services</title> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /><style id="et-builder-googlefonts-cached-inline">/* Original: https://fonts.googleapis.com/css?family=Public+Sans:100,200,300,regular,500,600,700,800,900,100italic,200italic,300italic,italic,500italic,600italic,700italic,800italic,900italic&subset=latin,latin-ext&display=swap *//* User Agent: Mozilla/5.0 (Unknown; Linux x86_64) AppleWebKit/538.1 (KHTML, like Gecko) Safari/538.1 Daum/4.1 */@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 100;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgTckd14.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 200;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRgDckd14.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 300;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673toPgDckd14.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 400;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgDckd14.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 500;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpjgDckd14.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 600;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tqPhzckd14.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 700;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tq2hzckd14.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 800;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRhzckd14.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 900;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tr4hzckd14.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 100;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpiJygct.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 200;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulpmJygct.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 300;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuSJmJygct.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 400;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpmJygct.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 500;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuJJmJygct.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 600;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuyJ6Jygct.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 700;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymu8Z6Jygct.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 800;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulp6Jygct.ttf) format('truetype');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 900;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuv56Jygct.ttf) format('truetype');}/* User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0 */@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 100;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgTckd10.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 200;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRgDckd10.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 300;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673toPgDckd10.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 400;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgDckd10.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 500;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpjgDckd10.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 600;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tqPhzckd10.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 700;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tq2hzckd10.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 800;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRhzckd10.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 900;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tr4hzckd10.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 100;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpiJygcu.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 200;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulpmJygcu.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 300;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuSJmJygcu.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 400;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpmJygcu.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 500;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuJJmJygcu.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 600;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuyJ6Jygcu.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 700;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymu8Z6Jygcu.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 800;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulp6Jygcu.woff) format('woff');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 900;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuv56Jygcu.woff) format('woff');}/* User Agent: Mozilla/5.0 (Windows NT 6.3; rv:39.0) Gecko/20100101 Firefox/39.0 */@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 100;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgTckd1s.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 200;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRgDckd1s.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 300;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673toPgDckd1s.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 400;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpRgDckd1s.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 500;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tpjgDckd1s.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 600;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tqPhzckd1s.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 700;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tq2hzckd1s.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 800;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673trRhzckd1s.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: italic;font-weight: 900;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwAs572Xtc6ZYQws9YVwnNDZpDyNjGolS673tr4hzckd1s.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 100;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpiJygco.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 200;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulpmJygco.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 300;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuSJmJygco.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 400;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuFpmJygco.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 500;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuJJmJygco.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 600;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuyJ6Jygco.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 700;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymu8Z6Jygco.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 800;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymulp6Jygco.woff2) format('woff2');}@font-face {font-family: 'Public Sans';font-style: normal;font-weight: 900;font-display: swap;src: url(https://fonts.gstatic.com/s/publicsans/v18/ijwGs572Xtc6ZYQws9YVwllKVG8qX1oyOymuv56Jygco.woff2) format('woff2');}</style><meta name='robots' content='max-image-preview:large' /> <script type="text/javascript"> let jqueryParams=[],jQuery=function(r){return jqueryParams=[...jqueryParams,r],jQuery},$=function(r){return jqueryParams=[...jqueryParams,r],$};window.jQuery=jQuery,window.$=jQuery;let customHeadScripts=!1;jQuery.fn=jQuery.prototype={},$.fn=jQuery.prototype={},jQuery.noConflict=function(r){if(window.jQuery)return jQuery=window.jQuery,$=window.jQuery,customHeadScripts=!0,jQuery.noConflict},jQuery.ready=function(r){jqueryParams=[...jqueryParams,r]},$.ready=function(r){jqueryParams=[...jqueryParams,r]},jQuery.load=function(r){jqueryParams=[...jqueryParams,r]},$.load=function(r){jqueryParams=[...jqueryParams,r]},jQuery.fn.ready=function(r){jqueryParams=[...jqueryParams,r]},$.fn.ready=function(r){jqueryParams=[...jqueryParams,r]};</script><link rel='dns-prefetch' href='//www.googletagmanager.com' /> <link rel='dns-prefetch' href='//fonts.googleapis.com' /> <meta content="CAWeb v.1.7.1" name="generator"/><link rel='stylesheet' id='dashicons-css' href='https://www.caloes.ca.gov/wp-includes/css/dashicons.min.css?ver=6.1.2' type='text/css' media='all' /> <link rel='stylesheet' id='thickbox-css' href='https://www.caloes.ca.gov/wp-includes/js/thickbox/thickbox.css?ver=6.1.2' type='text/css' media='all' /> <style id='wp-block-library-theme-inline-css' type='text/css'> .wp-block-audio figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-audio figcaption{color:hsla(0,0%,100%,.65)}.wp-block-audio{margin:0 0 1em}.wp-block-code{border:1px solid #ccc;border-radius:4px;font-family:Menlo,Consolas,monaco,monospace;padding:.8em 1em}.wp-block-embed figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-embed figcaption{color:hsla(0,0%,100%,.65)}.wp-block-embed{margin:0 0 1em}.blocks-gallery-caption{color:#555;font-size:13px;text-align:center}.is-dark-theme .blocks-gallery-caption{color:hsla(0,0%,100%,.65)}.wp-block-image figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-image figcaption{color:hsla(0,0%,100%,.65)}.wp-block-image{margin:0 0 1em}.wp-block-pullquote{border-top:4px solid;border-bottom:4px solid;margin-bottom:1.75em;color:currentColor}.wp-block-pullquote__citation,.wp-block-pullquote cite,.wp-block-pullquote footer{color:currentColor;text-transform:uppercase;font-size:.8125em;font-style:normal}.wp-block-quote{border-left:.25em solid;margin:0 0 1.75em;padding-left:1em}.wp-block-quote cite,.wp-block-quote footer{color:currentColor;font-size:.8125em;position:relative;font-style:normal}.wp-block-quote.has-text-align-right{border-left:none;border-right:.25em solid;padding-left:0;padding-right:1em}.wp-block-quote.has-text-align-center{border:none;padding-left:0}.wp-block-quote.is-large,.wp-block-quote.is-style-large,.wp-block-quote.is-style-plain{border:none}.wp-block-search .wp-block-search__label{font-weight:700}.wp-block-search__button{border:1px solid #ccc;padding:.375em .625em}:where(.wp-block-group.has-background){padding:1.25em 2.375em}.wp-block-separator.has-css-opacity{opacity:.4}.wp-block-separator{border:none;border-bottom:2px solid;margin-left:auto;margin-right:auto}.wp-block-separator.has-alpha-channel-opacity{opacity:1}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:100px}.wp-block-separator.has-background:not(.is-style-dots){border-bottom:none;height:1px}.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots){height:2px}.wp-block-table{margin:"0 0 1em 0"}.wp-block-table thead{border-bottom:3px solid}.wp-block-table tfoot{border-top:3px solid}.wp-block-table td,.wp-block-table th{word-break:normal}.wp-block-table figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table figcaption{color:hsla(0,0%,100%,.65)}.wp-block-video figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-video figcaption{color:hsla(0,0%,100%,.65)}.wp-block-video{margin:0 0 1em}.wp-block-template-part.has-background{padding:1.25em 2.375em;margin-top:0;margin-bottom:0} </style> <style id='global-styles-inline-css' type='text/css'> body{--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--duotone--dark-grayscale: url('#wp-duotone-dark-grayscale');--wp--preset--duotone--grayscale: url('#wp-duotone-grayscale');--wp--preset--duotone--purple-yellow: url('#wp-duotone-purple-yellow');--wp--preset--duotone--blue-red: url('#wp-duotone-blue-red');--wp--preset--duotone--midnight: url('#wp-duotone-midnight');--wp--preset--duotone--magenta-yellow: url('#wp-duotone-magenta-yellow');--wp--preset--duotone--purple-green: url('#wp-duotone-purple-green');--wp--preset--duotone--blue-orange: url('#wp-duotone-blue-orange');--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;}body { margin: 0;--wp--style--global--content-size: 823px;--wp--style--global--wide-size: 1080px; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.is-layout-flex){gap: 0.5em;}body .is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}body .is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}body .is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}body .is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}body .is-layout-flex{flex-wrap: wrap;align-items: center;}body .is-layout-flex > *{margin: 0;}body{padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}a:where(:not(.wp-element-button)){text-decoration: underline;}.wp-element-button, .wp-block-button__link{background-color: #32373c;border-width: 0;color: #fff;font-family: inherit;font-size: inherit;line-height: inherit;padding: calc(0.667em + 2px) calc(1.333em + 2px);text-decoration: none;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} .wp-block-navigation a:where(:not(.wp-element-button)){color: inherit;} :where(.wp-block-columns.is-layout-flex){gap: 2em;} .wp-block-pullquote{font-size: 1.5em;line-height: 1.6;} </style> <link rel='stylesheet' id='divi-style-css' href='https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/style.css?ver=4.19.1' type='text/css' media='all' /> <link rel='stylesheet' id='divi-breadcrumbs-styles-css' href='https://www.caloes.ca.gov/wp-content/plugins/breadcrumbs-divi-module/styles/style.min.css?ver=1.2.2' type='text/css' media='all' /> <link rel='stylesheet' id='caweb-module-extension-styles-css' href='https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/divi/extension/styles/style.min.css?ver=1.0.0' type='text/css' media='all' /> <link rel='stylesheet' id='tablepress-default-css' href='https://www.caloes.ca.gov/wp-content/plugins/tablepress/css/build/default.css?ver=2.4' type='text/css' media='all' /> <link rel='stylesheet' id='tablepress-responsive-tables-css' href='https://www.caloes.ca.gov/wp-content/plugins/tablepress-responsive-tables/css/tablepress-responsive.min.css?ver=1.8' type='text/css' media='all' /> <link rel='stylesheet' id='buttons-css' href='https://www.caloes.ca.gov/wp-includes/css/buttons.min.css?ver=6.1.2' type='text/css' media='all' /> <link rel='stylesheet' id='mediaelement-css' href='https://www.caloes.ca.gov/wp-includes/js/mediaelement/mediaelementplayer-legacy.min.css?ver=4.2.17' type='text/css' media='all' /> <link rel='stylesheet' id='wp-mediaelement-css' href='https://www.caloes.ca.gov/wp-includes/js/mediaelement/wp-mediaelement.min.css?ver=6.1.2' type='text/css' media='all' /> <link rel='stylesheet' id='media-views-css' href='https://www.caloes.ca.gov/wp-includes/css/media-views.min.css?ver=6.1.2' type='text/css' media='all' /> <link rel='stylesheet' id='imgareaselect-css' href='https://www.caloes.ca.gov/wp-includes/js/imgareaselect/imgareaselect.css?ver=0.9.8' type='text/css' media='all' /> <link rel='stylesheet' id='divi-style-parent-css' href='https://www.caloes.ca.gov/wp-content/themes/Divi/style-static.min.css?ver=4.19.1' type='text/css' media='all' /> <link rel='stylesheet' id='caweb-core-style-css' href='https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/css/caweb-5.5-sacramento.min.css?ver=6.1.2' type='text/css' media='all' /> <link rel='stylesheet' id='caweb-google-font-style-css' href='https://fonts.googleapis.com/css?family=Asap+Condensed%3A400%2C600%7CSource+Sans+Pro%3A400%2C700&ver=6.1.2' type='text/css' media='all' /> <link rel='stylesheet' id='caweb-external-custom-1-css' href='https://www.caloes.ca.gov/wp-content/uploads/caweb-1.7.1-ext/css/pfw-custom-styles-v1.2.3.css?ver=-6746e9e8d7d539.95981830' type='text/css' media='all' /> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/jquery/jquery.min.js?ver=3.6.1' id='jquery-core-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.3.2' id='jquery-migrate-js'></script> <script type='text/javascript' id='jquery-js-after'> jqueryParams.length&&$.each(jqueryParams,function(e,r){if("function"==typeof r){var n=String(r);n.replace("$","jQuery");var a=new Function("return "+n)();$(document).ready(a)}}); </script> <script type='text/javascript' id='utils-js-extra'> /* <![CDATA[ */ var userSettings = {"url":"\/","uid":"0","time":"1732700646","secure":"1"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/utils.min.js?ver=6.1.2' id='utils-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/plupload/moxie.min.js?ver=1.3.5' id='moxiejs-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/plupload/plupload.min.js?ver=2.1.9' id='plupload-js'></script> <!--[if lt IE 8]> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/json2.min.js?ver=2015-05-03' id='json2-js'></script> <![endif]--> <script type='text/javascript' defer src='https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/js/libs/modernizr-3.6.0.min.js?ver=6.1.2' id='cagov-modernizr-script-js'></script> <link rel="https://api.w.org/" href="https://www.caloes.ca.gov/wp-json/" /><link rel="alternate" type="application/json" href="https://www.caloes.ca.gov/wp-json/wp/v2/pages/21773" /><meta name="generator" content="WordPress 6.1.2" /> <link rel="canonical" href="https://www.caloes.ca.gov/gunsafety/" /> <link rel='shortlink' href='https://www.caloes.ca.gov/?p=21773' /> <script type="text/javascript"> var appInsights=window.appInsights||function(a){ function b(a){c[a]=function(){var b=arguments;c.queue.push(function(){c[a].apply(c,b)})}}var c={config:a},d=document,e=window;setTimeout(function(){var b=d.createElement("script");b.src=a.url||"https://az416426.vo.msecnd.net/scripts/a/ai.0.js",d.getElementsByTagName("script")[0].parentNode.appendChild(b)});try{c.cookie=d.cookie}catch(a){}c.queue=[];for(var f=["Event","Exception","Metric","PageView","Trace","Dependency"];f.length;)b("track"+f.pop());if(b("setAuthenticatedUserContext"),b("clearAuthenticatedUserContext"),b("startTrackEvent"),b("stopTrackEvent"),b("startTrackPage"),b("stopTrackPage"),b("flush"),!a.disableExceptionTracking){f="onerror",b("_"+f);var g=e[f];e[f]=function(a,b,d,e,h){var i=g&&g(a,b,d,e,h);return!0!==i&&c["_"+f](a,b,d,e,h),i}}return c }({ instrumentationKey:"058a87c0-2a92-4bf8-ba97-5e31eb9f4a3b" }); window.appInsights=appInsights,appInsights.queue&&0===appInsights.queue.length&&appInsights.trackPageView("Gun Safety", window.location.origin); </script> <meta charset="utf-8"> <meta name="Author" content="State of California" /> <meta name="Description" content="State of California" /> <meta name="Keywords" content="California, government" /> <!-- http://t.co/dKP3o1e --> <meta name="HandheldFriendly" content="True"> <!-- for Blackberry, AvantGo --> <meta name="MobileOptimized" content="320"> <!-- for Windows mobile --> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0"> <!-- Google Meta--> <meta name="google-site-verification" content="18f83ba1b29444716" /> <link rel="apple-touch-icon-precomposed" sizes="100x100" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon-precomposed.png"> <link rel="apple-touch-icon-precomposed" sizes="192x192" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon-192x192.png"> <link rel="apple-touch-icon-precomposed" sizes="180x180" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon-180x180.png"> <link rel="apple-touch-icon-precomposed" sizes="152x152" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon-152x152.png"> <link rel="apple-touch-icon-precomposed" sizes="144x144" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon-144x144.png"> <link rel="apple-touch-icon-precomposed" sizes="120x120" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon-120x120.png"> <link rel="apple-touch-icon-precomposed" sizes="114x114" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon-114x114.png"> <link rel="apple-touch-icon-precomposed" sizes="72x72" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon-72x72.png"> <link rel="apple-touch-icon-precomposed" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon-57x57.png"> <link rel="apple-touch-icon" href="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/apple-touch-icon.png"> <link title="Fav Icon" rel="icon" href="https://www.caloes.ca.gov/wp-content/uploads/favicon-1.ico"> <link rel="shortcut icon" href="https://www.caloes.ca.gov/wp-content/uploads/favicon-1.ico"> <script defer src="https://alert.cdt.ca.gov"></script> <script> jQuery(document).ready(function() { jQuery('.et_pb_module.et_pb_accordion .et_pb_accordion_item.et_pb_toggle_open').addClass('et_pb_toggle_close').removeClass('et_pb_toggle_open'); }); </script> <meta name="google-site-verification" content="5ZizaVXwOKhHhOW7zF2PfaN0HGJtlgxTAC_-NN66D7g"><script src="https://www.google.com/recaptcha/api.js"></script><style id="et-critical-inline-css">body{color:#282828}h1,h2,h3,h4,h5,h6{color:#282828}body .et_pb_bg_layout_light.et_pb_button:hover,body .et_pb_bg_layout_light .et_pb_button:hover,body .et_pb_button:hover{border-radius:0px}@media only screen and (min-width:1350px){.et_pb_row{padding:27px 0}.et_pb_section{padding:54px 0}.single.et_pb_pagebuilder_layout.et_full_width_page .et_post_meta_wrapper{padding-top:81px}.et_pb_fullwidth_section{padding:0}} h1,h2,h3,h4,h5,h6{font-family:'Public Sans',Helvetica,Arial,Lucida,sans-serif}body,input,textarea,select{font-family:'Public Sans',Helvetica,Arial,Lucida,sans-serif}.custom_button_1:after{padding:5px 12px;top:0;right:0;bottom:0;border-left:none}.lwp-arrow-color .et-pb-slider-arrows .et-pb-arrow-next,.lwp-arrow-color .et-pb-slider-arrows .et-pb-arrow-prev{color:#ffffff!important}.lwp-arrow-color .et-pb-controllers a{background-color:#ffffff!important}.home-page-panel .panel-heading{font-size:28px;background-color:fff}a{text-decoration-style:dotted!important;text-decoration:dotted!important}.et_pb_member_position{color:black}.et_pb_text_6,.et_pb_text_7,.et_pb_text_4,.et_pb_text_8,.et_pb_text_9,.et_pb_text_3,.et_pb_text_5,.et_pb_text_10,.et_pb_text_1,.et_pb_text_0,.et_pb_text_2,.lwp_divi_breadcrumbs_0{font-size:1rem!important}.wp-caption p.wp-caption-text{font-size:0.75rem!important}.experienceHeight{height:100vh;min-height:100vh}.et_pb_text_inner img{padding-right:.4em}</style> <link rel="preload" as="style" id="et-core-unified-deferred-21773-cached-inline-styles" href="https://www.caloes.ca.gov/wp-content/et-cache/1/1/21773/et-core-unified-deferred-21773.min.css?ver=1732148234" onload="this.onload=null;this.rel='stylesheet';" /></head> <body class="page-template-default page page-id-21773 page-parent primary locale-en-us et_button_icon_visible et_pb_button_helper_class et_header_style_left et_pb_footer_columns4 et_cover_background et_pb_gutter windows et_pb_gutters3 et_pb_pagebuilder_layout et_no_sidebar et_divi_theme et-db divi_builder title_not_displayed sidebar_not_displayed 5.5 sticky_nav"> <!-- Google Tag Manager (noscript) --> <noscript> <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5JTZCJC" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <header id="header" class="global-header fixed"> <div id="skip-to-content"><a href="#main-content">Skip to Main Content</a></div> <div id="caweb_alerts"></div> <!-- Utility Header --> <div class="utility-header hidden-print"> <div class="container"> <div class="group flex-row"> <div class="social-media-links"> <div class="header-cagov-logo"> <a href="https://www.ca.gov/" title="CA.gov website"> <span class="sr-only">CA.gov</span> <img style="height: 31px;" src="https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/images/system/cagov-logo-white.png" class="pos-rel p-t-sm top-minus-5" alt="CA.gov website" aria-hidden="true" /> </a> </div> </div> <div class="settings-links"> <a class="utility-custom-1" href="/office-of-the-director/" target="_blank">About</a><a class="utility-custom-2" href="https://news.caloes.ca.gov" target="_blank">News</a> <a class="utility-contact-us" href="https://experience.arcgis.com/experience/1e4a2d879dfd49a785ec46e906b35671?data_id=dataSource_1-17fdc0c185f-layer-5%3A6">Contact Us</a> <button class="btn btn-xs btn-primary collapsed" data-toggle="collapse" data-target="#siteSettings" aria-controls="siteSettings"> <span class="ca-gov-icon-gear" aria-hidden="true"></span> Settings</button> </div> </div> </div> </div> <div class="site-settings section section-standout collapse collapsed" aria-atomic="true" role="alert" id="siteSettings"> <div class="container p-y"> <div class="btn-group btn-group-justified-sm" role="group" aria-label="contrastMode"> <div class="btn-group"><button type="button" class="btn btn-standout disableHighContrastMode">Default</button></div> <div class="btn-group"><button type="button" class="btn btn-standout enableHighContrastMode">High Contrast</button></div> </div> <div class="btn-group" role="group" aria-label="textSizeMode"> <div class="btn-group"><button type="button" class="btn btn-standout resetTextSize">Reset</button></div> <div class="btn-group"><button type="button" class="btn btn-standout increaseTextSize"><span class="hidden-xs">Increase Font Size</span><span class="visible-xs">Font <span class="sr-only">Increase</span><span class="ca-gov-icon-plus-line font-size-sm" aria-hidden="true"></span></span></button></div> <div class="btn-group"><button type="button" class="btn btn-standout decreaseTextSize"><span class="hidden-xs">Decrease Font Size</span><span class="visible-xs">Font <span class="sr-only">Decrease</span><span class="ca-gov-icon-minus-line font-size-sm" aria-hidden="true"></span></span></button></div> </div> <button type="button" class="close" data-toggle="collapse" data-target="#siteSettings" aria-expanded="false" aria-controls="siteSettings" aria-label="Close"><span aria-hidden="true">×</span></button> </div> </div> <!-- Branding --> <div class="branding"> <div class="header-organization-banner"> <a href="/"> <img alt="California Governor's Office of Emergency Services Logo" src="https://www.caloes.ca.gov/wp-content/uploads/Logo-Header-Main.jpg" alt="Cal OES Logo" /> </a> </div> </div> <!-- mobile navigation controls --> <div class="mobile-controls"> <span class="mobile-control-group mobile-header-icons"> <!-- Add more mobile controls here. These will be on the right side of the mobile page header section --> </span> <div class="mobile-control-group main-nav-icons"> <button class="mobile-control toggle-search"> <span class="ca-gov-icon-search hidden-print" aria-hidden="true"></span><span class="sr-only">Search</span> </button> <button id="nav-icon3" class="mobile-control toggle-menu" aria-expanded="false" aria-controls="navigation" data-toggle="collapse" data-target="#navigation" data-toggle="collapse" data-target="#navigation"> <span></span> <span></span> <span></span> <span></span> <span class="sr-only">Menu</span> </button> </div> </div> <div class="navigation-search"> <!-- Include Navigation --> <nav id="navigation" class="main-navigation dropdown justify-content-end hidden-print nav"> <ul id="nav_list" class="top-level-nav"><li class="nav-item nav-item-home"><a href="/" class="first-level-link"><span class="ca-gov-icon-home"></span> Home</a></li><li class="nav-item menu-item menu-item-type-custom menu-item-object-custom" title=""><a href="http://www.google.com" class="first-level-link"><span class="ca-gov-icon-logo invisible"></span><span class="link-title">Be Ready</span></a><div class="sub-nav"><div><ul class="second-level-nav"><li class="unit1 w-100 p-0 menu-item menu-item-type-custom menu-item-object-custom" title="" ><a href="https://water.ca.gov/SOW" class="second-level-link d-block" target="_blank" tabindex="-1">Drought Preparedness</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-custom menu-item-object-custom" title="" ><a href="https://earthquake.ca.gov" class="second-level-link d-block" target="_blank" tabindex="-1">Earthquake Preparedness</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/planning-preparedness-prevention/california-specialized-training-institute/" class="second-level-link d-block" tabindex="-1">Emergency Response Training</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-custom menu-item-object-custom" title="" ><a href="https://www.readyforwildfire.org/" class="second-level-link d-block" target="_blank" tabindex="-1">Fire Preparedness</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/planning-preparedness-prevention/planning-preparedness/dam-safety-planning/" class="second-level-link d-block" tabindex="-1">Flood Preparedness</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-custom menu-item-object-custom" title="" ><a href="https://calalerts.org" class="second-level-link d-block" target="_blank" tabindex="-1">Get Alerts</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-custom menu-item-object-custom" title="" ><a href="https://www.flexalert.org/" class="second-level-link d-block" target="_blank" tabindex="-1">Power Outage</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/planning-preparedness-prevention/planning-preparedness/school-emergency-planning-safety/" class="second-level-link d-block" tabindex="-1">School Emergency Planning & Safety</a></li></ul></div></div></li><li class="nav-item menu-item menu-item-type-custom menu-item-object-custom" title=""><a href="http://www.google.com" class="first-level-link"><span class="ca-gov-icon-logo invisible"></span><span class="link-title">Get Assistance</span></a><div class="sub-nav"><div><ul class="second-level-nav"><li class="unit1 w-100 p-0 menu-item menu-item-type-custom menu-item-object-custom" title="" ><a href="https://news.caloes.ca.gov/2023-winter-storms-recovery/" class="second-level-link d-block" target="_blank" tabindex="-1">Disaster Survivor Assistance</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-custom menu-item-object-custom" title="" ><a href="/office-of-the-director/operations/recovery-directorate/recovery-operations/public-assistance/federal-disaster-assistance/" class="second-level-link d-block" tabindex="-1">Federal Assistance</a></li></ul></div></div></li><li class="nav-item menu-item menu-item-type-custom menu-item-object-custom" title=""><a href="http://www.google.com" class="first-level-link"><span class="ca-gov-icon-logo invisible"></span><span class="link-title">Disaster Response</span></a><div class="sub-nav"><div><ul class="second-level-nav"><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/policy-administration/access-functional-needs/" class="second-level-link d-block" tabindex="-1">Access & Functional Needs Support</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/cal-oes/active-incidents/" class="second-level-link d-block" tabindex="-1">Current Incidents</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/response-operations/fire-rescue/hazardous-materials/spill-release-reporting/" class="second-level-link d-block" tabindex="-1">Report a Spill</a></li></ul></div></div></li><li class="nav-item menu-item menu-item-type-custom menu-item-object-custom" title=""><a href="http://www.google.com" class="first-level-link"><span class="ca-gov-icon-logo invisible"></span><span class="link-title">Divisions</span></a><div class="sub-nav"><div><ul class="second-level-nav"><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/homeland-security/" class="second-level-link d-block" tabindex="-1">Homeland Security</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/logistics-management/" class="second-level-link d-block" tabindex="-1">Logistics Management</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/" class="second-level-link d-block" tabindex="-1">Office of the Director</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/policy-administration/" class="second-level-link d-block" tabindex="-1">Policy & Administration</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/planning-preparedness-prevention/" class="second-level-link d-block" tabindex="-1">Planning, Preparedness, and Prevention</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/recovery-directorate/" class="second-level-link d-block" tabindex="-1">Recovery</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/response-operations/" class="second-level-link d-block" tabindex="-1">Response Operations</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/seismic-safety-commission/" class="second-level-link d-block" tabindex="-1">Seismic Safety Commission</a></li></ul></div></div></li><li class="nav-item menu-item menu-item-type-custom menu-item-object-custom" title=""><a href="" class="first-level-link"><span class="ca-gov-icon-logo invisible"></span><span class="link-title">Initiatives</span></a><div class="sub-nav"><div><ul class="second-level-nav"><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/planning-preparedness-prevention/seismic-hazards/california-earthquake-early-warning-program/" class="second-level-link d-block" tabindex="-1">Earthquake Early Warning</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-custom menu-item-object-custom" title="" ><a href="https://www.listoscalifornia.org/" class="second-level-link d-block" tabindex="-1">Listos California</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/operations/recovery-directorate/hazard-mitigation/prepare-california/" class="second-level-link d-block" tabindex="-1">Prepare California</a></li><li class="unit1 w-100 p-0 menu-item menu-item-type-post_type menu-item-object-page" title="" ><a href="https://www.caloes.ca.gov/office-of-the-director/policy-administration/finance-administration/grants-management/search-for-grants/" class="second-level-link d-block" tabindex="-1">Search for Grants</a></li></ul></div></div></li><li class="nav-item" id="nav-item-search" ><button class="first-level-link h-auto"><span class="ca-gov-icon-search" aria-hidden="true"></span> Search</button></li></ul></nav> <div id="head-search" class="search-container hidden-print" role="region" aria-label="Search Expanded"> <div class="container"> <form id="Search" class="pos-rel" action="https://www.caloes.ca.gov/serp"> <span class="sr-only" id="SearchInput">Custom Google Search</span> <input type="text" id="q" name="q" value="" aria-labelledby="SearchInput" placeholder="Search" class="search-textfield height-50 border-0 p-x-sm w-100" /> <button type="submit" class="pos-abs gsc-search-button top-0 width-50 height-50 border-0 bg-transparent"> <span class="ca-gov-icon-search font-size-30 color-gray" aria-hidden="true" ></span> <span class="sr-only">Submit</span> </button> <div class="width-50 height-50 close-search-btn"> <!-- Some Google styles add an 'x' background image when button has 'gsc-clear-button' in the class --> <button class="close-search gsc-clear-button width-50 height-50 border-0 bg-transparent pos-rel" type="reset" tabindex="-1"> <span class="sr-only">Close Search</span> <span class="ca-gov-icon-close-mark" aria-hidden="true"></span> </button> </div> </form> </div> </div> </div> </header> <div id="page-container" class="page-container"> <div id="et-main-area"> <div id="main-content" class="main-content" tabindex="-1"> <main class="main-primary"> <article id="post-21773" class="post-21773 page type-page status-publish hentry"> <div class="entry-content"><div class="et-l et-l--post"> <div class="et_builder_inner_content et_pb_gutters3"> <div class="et_pb_section et_pb_section_0 et_pb_with_background et_section_regular" > <div class="et_pb_row et_pb_row_0 et_pb_equal_columns"> <div class="et_pb_column et_pb_column_3_4 et_pb_column_0 et_pb_css_mix_blend_mode_passthrough"> <div class="et_pb_module lwp_divi_breadcrumbs lwp_divi_breadcrumbs_0"> <div class="et_pb_module_inner"> <div class="lwp-breadcrumbs"> <span class="before"></span> <span vocab="https://schema.org/" typeof="BreadcrumbList"><span property="itemListElement" typeof="ListItem"><a property="item" typeof="WebPage" href="https://www.caloes.ca.gov/" class="home"><span property="name">Home</span></a><meta property="position" content="1"></span> <span class="separator et-pb-icon">5</span> <span class="current">Gun Safety</span></span></div> </div> </div> </div><div class="et_pb_column et_pb_column_1_4 et_pb_column_1 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div id="google-search" class="et_pb_module et_pb_text et_pb_text_0 breadcrumb-search et_pb_text_align_left et_pb_bg_layout_light"> </div> </div> </div> </div><div class="et_pb_section et_pb_section_1 et_pb_with_background et_section_regular" > <div class="et_pb_row et_pb_row_1 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_2 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_1 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><h5 style="text-align: center;"><span style="font-size: 14pt;"><strong><span style="color: #ffffff;">If you or a loved one is actively experiencing a crisis and at imminent risk of self-harm or harm to others, call 911.</span></strong></span></h5></div> </div> </div> </div> </div><div class="et_pb_section et_pb_section_2 et_pb_fullwidth_section et_section_regular et_pb_section--with-menu" > <div class="et_pb_module et_pb_fullwidth_menu et_pb_fullwidth_menu_0 et_pb_bg_layout_light et_pb_text_align_left et_dropdown_animation_fade et_pb_fullwidth_menu_fullwidth et_pb_fullwidth_menu--with-logo et_pb_fullwidth_menu--style-left_aligned"> <div class="et_pb_row clearfix"> <div class="et_pb_menu__logo-wrap"> <div class="et_pb_menu__logo"> <img decoding="async" width="300" height="80" src="https://www.caloes.ca.gov/wp-content/uploads/oesLogo.jpg" alt="California Governor's Office of Emergency Services Logo" class="wp-image-547" /> </div> </div> <div class="et_pb_menu__wrap"> <div class="et_pb_menu__menu"> <nav class="et-menu-nav fullwidth-menu-nav"><ul id="menu-gunsafety" class="et-menu fullwidth-menu nav"><li id="menu-item-22373" class="et_pb_menu_page_id-21773 menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-21773 current_page_item menu-item-22373"><a href="https://www.caloes.ca.gov/gunsafety/" aria-current="page">Home</a></li> <li id="menu-item-21979" class="et_pb_menu_page_id-21934 menu-item menu-item-type-post_type menu-item-object-page menu-item-21979"><a href="https://www.caloes.ca.gov/gunsafety/prevent-and-prepare/">Prevent and Prepare</a></li> <li id="menu-item-21978" class="et_pb_menu_page_id-21928 menu-item menu-item-type-post_type menu-item-object-page menu-item-21978"><a href="https://www.caloes.ca.gov/gunsafety/how-to-respond/">How to Respond</a></li> <li id="menu-item-21980" class="et_pb_menu_page_id-21940 menu-item menu-item-type-post_type menu-item-object-page menu-item-21980"><a href="https://www.caloes.ca.gov/gunsafety/survivor-resources/">Survivor Resources</a></li> <li id="menu-item-21981" class="et_pb_menu_page_id-21948 menu-item menu-item-type-post_type menu-item-object-page menu-item-21981"><a href="https://www.caloes.ca.gov/gunsafety/resource-center/">Resource Center</a></li> <li id="menu-item-22289" class="et_pb_menu_page_id-22216 menu-item menu-item-type-post_type menu-item-object-page menu-item-22289"><a href="https://www.caloes.ca.gov/gunsafety/about/">About</a></li> </ul></nav> </div> <div class="et_mobile_nav_menu"> <div class="mobile_nav closed"> <span class="mobile_menu_bar"></span> </div> </div> </div> </div> </div> </div><div class="et_pb_section et_pb_section_3 et_pb_with_background et_section_regular" > <div class="et_pb_row et_pb_row_2 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_1_2 et_pb_column_3 et_pb_css_mix_blend_mode_passthrough"> <div class="et_pb_module et_pb_image et_pb_image_0"> <span class="et_pb_image_wrap "><img decoding="async" width="693" height="455" src="https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/people.png" alt="Diversified community representation" title="" srcset="https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/people.png 693w, https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/people-480x315.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 693px, 100vw" class="wp-image-21905" /></span> </div> </div><div class="et_pb_column et_pb_column_1_2 et_pb_column_4 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_2 et_pb_text_align_left et_pb_bg_layout_dark"> <div class="et_pb_text_inner"><h1><strong>GUN VIOLENCE PREVENTION TOOLS FOR CALIFORNIANS</strong></h1> <p><span style="font-size: 18pt; color: #FFFFFF;">Providing California communities and those in crisis the opportunity to safely access help, care and resources to prevent gun violence and firearm suicide.</span></p></div> </div><div class="et_pb_button_module_wrapper et_pb_button_0_wrapper et_pb_button_alignment_left et_pb_module "> <a class="et_pb_button et_pb_button_0 et_pb_bg_layout_dark" href="/gunsafety/prevent-and-prepare/">HOW TO PREVENT AND PREPARE</a> </div> </div> </div> </div><div class="et_pb_section et_pb_section_4 et_pb_with_background et_section_regular" > <div class="et_pb_row et_pb_row_3 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_1_2 et_pb_column_5 et_pb_css_mix_blend_mode_passthrough"> <div class="et_pb_module et_pb_text et_pb_text_3 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><h2><strong>CALIFORNIA LEADS THE NATION IN GUN SAFETY </strong></h2> <p>California has implemented the strongest gun safety laws in the nation, including temporary Gun Violence Restraining Orders, to prevent self-harm and harm to others.</p></div> </div> </div><div class="et_pb_column et_pb_column_1_2 et_pb_column_6 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_with_border et_pb_module et_pb_text et_pb_text_4 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><p><span style="font-size: 13pt; color: #ffffff;"><strong><em>“Our laws have cut gun deaths by half, but we’re not stopping there. We’re connecting with communities across our state to share life-saving tools with the families and people who need them most.”</em></strong></span></p> <p><span style="color: #ffffff;"><strong><em>Governor Gavin Newsom</em></strong></span></p></div> </div> </div> </div><div class="et_pb_row et_pb_row_4 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_1_3 et_pb_column_7 et_pb_css_mix_blend_mode_passthrough"> <div class="et_pb_module et_pb_blurb et_pb_blurb_0 et_clickable et_pb_text_align_center et_pb_blurb_position_top et_pb_bg_layout_light"> <div class="et_pb_blurb_content"> <div class="et_pb_blurb_container"> <div class="et_pb_blurb_description"><h2 style="text-align: center;"><strong>PREVENT AND PREPARE</strong></h2> <p><img decoding="async" class="aligncenter wp-image-16090" src="https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/PREVENT_SHIELD.png" alt="" width="113" height="150" /></p> <div style="text-align: center; min-height: 80px;">Tools to help you prevent self-harm and harm to others.</div> <p><a class="et_pb_button et_pb_button_0 et_pb_bg_layout_dark no-underline et_pb_custom_button_icon" href="/gunsafety/prevent-and-prepare/"><strong>LEARN MORE</strong></a></p></div> </div> </div> </div> </div><div class="et_pb_column et_pb_column_1_3 et_pb_column_8 et_pb_css_mix_blend_mode_passthrough"> <div class="et_pb_module et_pb_blurb et_pb_blurb_1 et_clickable et_pb_text_align_center et_pb_blurb_position_top et_pb_bg_layout_light"> <div class="et_pb_blurb_content"> <div class="et_pb_blurb_container"> <div class="et_pb_blurb_description"><h2 style="text-align: center;"><strong>HOW TO RESPOND</strong></h2> <p><img decoding="async" class="aligncenter wp-image-16091" src="https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/HOW-TO-RESPOND.png" alt="" width="104" height="150" /></p> <div style="text-align: center; min-height: 80px;">Guidance keeping yourself and others safe during an active shooter situation.</div> <p><a class="et_pb_button et_pb_button_0 et_pb_bg_layout_dark no-underline et_pb_custom_button_icon" href="/gunsafety/how-to-respond/"><strong>LEARN MORE</strong></a></p></div> </div> </div> </div> </div><div class="et_pb_column et_pb_column_1_3 et_pb_column_9 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_blurb et_pb_blurb_2 et_clickable et_pb_text_align_center et_pb_blurb_position_top et_pb_bg_layout_light"> <div class="et_pb_blurb_content"> <div class="et_pb_blurb_container"> <div class="et_pb_blurb_description"><h2 style="text-align: center;"><strong>SURVIVOR RESOURCES</strong></h2> <p><img decoding="async" class="aligncenter wp-image-16089" src="https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/SURVIVOR-RESOURCES.png" alt="" width="153" height="150" /></p> <div style="text-align: center; min-height: 80px;">If you are a survivor of gun violence, support and resources are available to you.</div> <p><a class="et_pb_button et_pb_button_0 et_pb_bg_layout_dark no-underline et_pb_custom_button_icon" href="/gunsafety/survivor-resources/"><strong>LEARN MORE</strong></a></p></div> </div> </div> </div> </div> </div> </div><div class="et_pb_section et_pb_section_5 et_pb_with_background et_section_regular" > <div class="et_pb_with_border et_pb_row et_pb_row_5 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_1_3 et_pb_column_10 et_pb_css_mix_blend_mode_passthrough"> <div class="et_pb_module et_pb_image et_pb_image_1"> <span class="et_pb_image_wrap "><img decoding="async" width="763" height="763" src="https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/RESTRAIN_ORDER.png" alt="Oficial document icon" title="" srcset="https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/RESTRAIN_ORDER.png 763w, https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/RESTRAIN_ORDER-480x480.png 480w" sizes="(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) 763px, 100vw" class="wp-image-21909" /></span> </div> </div><div class="et_pb_column et_pb_column_2_3 et_pb_column_11 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_5 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><h2><span style="color: #ffffff;"><strong>TEMPORARY GUN VIOLENCE RESTRAINING ORDERS</strong></span></h2> <p><span style="color: #ffffff;">Gun Violence Restraining Orders are an effective tool to stop someone in crisis from harming themself or others by temporarily preventing access to firearms and ammunition while the order is in place.</span></p></div> </div><div class="et_pb_button_module_wrapper et_pb_button_1_wrapper et_pb_button_alignment_left et_pb_module "> <a class="et_pb_button et_pb_button_1 et_pb_bg_layout_dark" href="/gunsafety/prevent-and-prepare/">LEARN ABOUT THIS TOOL</a> </div> </div> </div> </div><div class="et_pb_section et_pb_section_6 et_pb_with_background et_section_regular" > <div class="et_pb_row et_pb_row_6 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_12 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_blurb et_pb_blurb_3 et_clickable et_pb_text_align_center et_pb_blurb_position_top et_pb_bg_layout_light"> <div class="et_pb_blurb_content"> <div class="et_pb_blurb_container"> <div class="et_pb_blurb_description"><div style="height: 220px; position: relative; margin-top: 10px;"> <h2 class="alignright"><strong>RESOURCE CENTER<br /></strong></h2> <p><img decoding="async" class="wp-image-16110" style="position: absolute; top: 25%; left: 0px;" src="https://www.caloes.ca.gov/wp-content/uploads/Gun-Safety/pictures/RESOURCE_CENTER.png" alt="" width="30%" /><br /><a class="et_pb_button et_pb_button_0 et_pb_bg_layout_dark no-underline et_pb_custom_button_icon alignleft" style="width: 60%; position: absolute; right: 0px; bottom: 10px;" href="/gunsafety/resource-center/"><strong>LEARN MORE</strong></a></p> </div></div> </div> </div> </div> </div> </div> </div><div class="et_pb_section et_pb_section_7 et_pb_with_background et_section_regular" > <div class="et_pb_row et_pb_row_7 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_13 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_6 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><h2><strong>HELPFUL INFORMATION AND RESOURCES</strong></h2></div> </div> </div> </div><div class="et_pb_row et_pb_row_8 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_1_2 et_pb_column_14 et_pb_css_mix_blend_mode_passthrough"> <div class="et_pb_button_module_wrapper et_pb_button_2_wrapper et_pb_button_alignment_left et_pb_module "> <a class="et_pb_button et_pb_button_2 et_pb_bg_layout_dark" href="/gunsafety/prevent-and-prepare/">What is a Gun Violence Restraining Order? </a> </div><div class="et_pb_button_module_wrapper et_pb_button_3_wrapper et_pb_button_alignment_left et_pb_module "> <a class="et_pb_button et_pb_button_3 et_pb_bg_layout_dark" href="/gunsafety/prevent-and-prepare/">Who can file?</a> </div> </div><div class="et_pb_column et_pb_column_1_2 et_pb_column_15 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_button_module_wrapper et_pb_button_4_wrapper et_pb_button_alignment_left et_pb_module "> <a class="et_pb_button et_pb_button_4 et_pb_bg_layout_dark" href="/gunsafety/prevent-and-prepare/">What are the steps to file? </a> </div><div class="et_pb_button_module_wrapper et_pb_button_5_wrapper et_pb_button_alignment_left et_pb_module "> <a class="et_pb_button et_pb_button_5 et_pb_bg_layout_dark" href="/gunsafety/about" target="_blank">California’s Gun Safety Policies</a> </div> </div> </div><div class="et_pb_row et_pb_row_9 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_16 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_code et_pb_code_0"> <div class="et_pb_code_inner"><style> .et_pb_button_2, .et_pb_button_3, .et_pb_button_4, .et_pb_button_5{ color: #000 !important; border: solid 3px black; } .et_pb_button:after{ margin-left: auto!important; right: .3em; } .branding, .mobile-controls, .navigation-search{ display: none; } </style></div> </div> </div> </div> </div><div class="et_pb_section et_pb_section_8 et_pb_with_background et_section_regular" > <div class="et_pb_row et_pb_row_10 et_pb_equal_columns et_pb_gutters1"> <div class="et_pb_column et_pb_column_4_4 et_pb_column_17 et_pb_css_mix_blend_mode_passthrough et-last-child"> <div class="et_pb_module et_pb_text et_pb_text_7 et_pb_text_align_left et_pb_bg_layout_light"> <div class="et_pb_text_inner"><p style="text-align: center;"><strong><span style="font-size: 14pt;">Disclaimer: This website is for information only. It does not provide legal advice.</span></strong></p></div> </div> </div> </div> </div> </div> </div> </div> </article> <!-- .et_pb_post --> <span class="return-top hidden-print"></span> </main> </div> <!-- #main-content --> </div> </div> <footer id="footer" class="global-footer hidden-print"><div class="container"><div class="row"><div class="three-quarters"><ul class="footer-links" ><li><a href="#skip-to-content">Back to Top</a></li><li class="" title=""><a href="https://www.caloes.ca.gov/privacy-policy/">Privacy Policy</a></li><li class="" title=""><a href="https://www.caloes.ca.gov/office-of-the-director/policy-administration/legal-affairs/conditions-of-use/">Conditions of Use</a></li><li class="" title=""><a href="https://www.caloes.ca.gov/office-of-the-director/policy-administration/legal-affairs/public-records-request/">Public Records Act Request</a></li><li class="" title=""><a href="https://www.caloes.ca.gov/office-of-the-director/policy-administration/internal-audit-office/whistleblower/">Whistleblower</a></li><li class="" title=""><a href="https://www.caloes.ca.gov/site-map-california-governors-office-of-emergency-services/">Site Map</a></li><li class="" title=""><a href="https://www.caloes.ca.gov/cal-oes/website-accessibility-certification/">Website Accessibility Certification</a></li><li class="" title=""><a href="https://www.caloes.ca.gov/office-of-the-director/policy-administration/legal-affairs/service-of-process/">Service of Process</a></li><li class="" title=""><a href="https://www.caloes.ca.gov/office-of-the-director/policy-administration/internal-audit-office/feedback/">Feedback</a></li></ul></div><div class="quarter text-right"><ul class="socialsharer-container"><li><a href="https://www.facebook.com/CaliforniaOES" title="Share via Facebook" target="_blank"><span class="ca-gov-icon-facebook"></span><span class="sr-only">facebook</span></a></li><li><a href="https://twitter.com/cal_oes" title="Share via Twitter" target="_blank"><span class="ca-gov-icon-twitter"></span><span class="sr-only">twitter</span></a></li><li><a href="https://www.flickr.com/photos/calemaphotos/" title="Share via Flickr" target="_blank"><span class="ca-gov-icon-flickr"></span><span class="sr-only">flickr</span></a></li><li><a href="https://www.youtube.com/user/CalEMATV" title="Share via YouTube" target="_blank"><span class="ca-gov-icon-youtube"></span><span class="sr-only">youtube</span></a></li><li><a href="https://www.instagram.com/cal_OES/" title="Share via Instagram" target="_blank"><span class="ca-gov-icon-instagram"></span><span class="sr-only">instagram</span></a></li></ul></div></div></div><div class="copyright"><div class="container"><div class="row"><div class="half"><p class="d-inline">Copyright <span aria-hidden="true">©</span> 2024 State of California</p></div></div></div></div></footer><div class="gtranslate_wrapper" id="gt-wrapper-86311516"></div> <script type="text/javascript"> var et_link_options_data = [{"class":"et_pb_blurb_0","url":"\/gunsafety\/prevent-and-prepare\/","target":"_self"},{"class":"et_pb_blurb_1","url":"\/gunsafety\/how-to-respond\/","target":"_self"},{"class":"et_pb_blurb_2","url":"\/gunsafety\/survivor-resources\/","target":"_self"},{"class":"et_pb_blurb_3","url":"\/gunsafety\/resource-center\/","target":"_self"}]; </script> <script async src="https://siteimproveanalytics.com/js/siteanalyze_1768.js"></script> <script type="text/html" id="tmpl-media-frame"> <div class="media-frame-title" id="media-frame-title"></div> <h2 class="media-frame-menu-heading">Actions</h2> <button type="button" class="button button-link media-frame-menu-toggle" aria-expanded="false"> Menu <span class="dashicons dashicons-arrow-down" aria-hidden="true"></span> </button> <div class="media-frame-menu"></div> <div class="media-frame-tab-panel"> <div class="media-frame-router"></div> <div class="media-frame-content"></div> </div> <h2 class="media-frame-actions-heading screen-reader-text"> Selected media actions </h2> <div class="media-frame-toolbar"></div> <div class="media-frame-uploader"></div> </script> <script type="text/html" id="tmpl-media-modal"> <div tabindex="0" class="media-modal wp-core-ui" role="dialog" aria-labelledby="media-frame-title"> <# if ( data.hasCloseButton ) { #> <button type="button" class="media-modal-close"><span class="media-modal-icon"><span class="screen-reader-text">Close dialog</span></span></button> <# } #> <div class="media-modal-content" role="document"></div> </div> <div class="media-modal-backdrop"></div> </script> <script type="text/html" id="tmpl-uploader-window"> <div class="uploader-window-content"> <div class="uploader-editor-title">Drop files to upload</div> </div> </script> <script type="text/html" id="tmpl-uploader-editor"> <div class="uploader-editor-content"> <div class="uploader-editor-title">Drop files to upload</div> </div> </script> <script type="text/html" id="tmpl-uploader-inline"> <# var messageClass = data.message ? 'has-upload-message' : 'no-upload-message'; #> <# if ( data.canClose ) { #> <button class="close dashicons dashicons-no"><span class="screen-reader-text">Close uploader</span></button> <# } #> <div class="uploader-inline-content {{ messageClass }}"> <# if ( data.message ) { #> <h2 class="upload-message">{{ data.message }}</h2> <# } #> <div class="upload-ui"> <h2 class="upload-instructions drop-instructions">Drop files to upload</h2> <p class="upload-instructions drop-instructions">or</p> <button type="button" class="browser button button-hero" aria-labelledby="post-upload-info">Select Files</button> </div> <div class="upload-inline-status"></div> <div class="post-upload-ui" id="post-upload-info"> <p class="max-upload-size"> Maximum upload file size: 244 MB. </p> <# if ( data.suggestedWidth && data.suggestedHeight ) { #> <p class="suggested-dimensions"> Suggested image dimensions: {{data.suggestedWidth}} by {{data.suggestedHeight}} pixels. </p> <# } #> </div> </div> </script> <script type="text/html" id="tmpl-media-library-view-switcher"> <a href="https://www.caloes.ca.gov/wp-admin/upload.php?mode=list" class="view-list"> <span class="screen-reader-text">List view</span> </a> <a href="https://www.caloes.ca.gov/wp-admin/upload.php?mode=grid" class="view-grid current" aria-current="page"> <span class="screen-reader-text">Grid view</span> </a> </script> <script type="text/html" id="tmpl-uploader-status"> <h2>Uploading</h2> <div class="media-progress-bar"><div></div></div> <div class="upload-details"> <span class="upload-count"> <span class="upload-index"></span> / <span class="upload-total"></span> </span> <span class="upload-detail-separator">–</span> <span class="upload-filename"></span> </div> <div class="upload-errors"></div> <button type="button" class="button upload-dismiss-errors">Dismiss errors</button> </script> <script type="text/html" id="tmpl-uploader-status-error"> <span class="upload-error-filename">{{{ data.filename }}}</span> <span class="upload-error-message">{{ data.message }}</span> </script> <script type="text/html" id="tmpl-edit-attachment-frame"> <div class="edit-media-header"> <button class="left dashicons"<# if ( ! data.hasPrevious ) { #> disabled<# } #>><span class="screen-reader-text">Edit previous media item</span></button> <button class="right dashicons"<# if ( ! data.hasNext ) { #> disabled<# } #>><span class="screen-reader-text">Edit next media item</span></button> <button type="button" class="media-modal-close"><span class="media-modal-icon"><span class="screen-reader-text">Close dialog</span></span></button> </div> <div class="media-frame-title"></div> <div class="media-frame-content"></div> </script> <script type="text/html" id="tmpl-attachment-details-two-column"> <div class="attachment-media-view {{ data.orientation }}"> <h2 class="screen-reader-text">Attachment Preview</h2> <div class="thumbnail thumbnail-{{ data.type }}"> <# if ( data.uploading ) { #> <div class="media-progress-bar"><div></div></div> <# } else if ( data.sizes && data.sizes.large ) { #> <img class="details-image" src="{{ data.sizes.large.url }}" draggable="false" alt="" /> <# } else if ( data.sizes && data.sizes.full ) { #> <img class="details-image" src="{{ data.sizes.full.url }}" draggable="false" alt="" /> <# } else if ( -1 === jQuery.inArray( data.type, [ 'audio', 'video' ] ) ) { #> <img class="details-image icon" src="{{ data.icon }}" draggable="false" alt="" /> <# } #> <# if ( 'audio' === data.type ) { #> <div class="wp-media-wrapper wp-audio"> <audio style="visibility: hidden" controls class="wp-audio-shortcode" width="100%" preload="none"> <source type="{{ data.mime }}" src="{{ data.url }}" /> </audio> </div> <# } else if ( 'video' === data.type ) { var w_rule = ''; if ( data.width ) { w_rule = 'width: ' + data.width + 'px;'; } else if ( wp.media.view.settings.contentWidth ) { w_rule = 'width: ' + wp.media.view.settings.contentWidth + 'px;'; } #> <div style="{{ w_rule }}" class="wp-media-wrapper wp-video"> <video controls="controls" class="wp-video-shortcode" preload="metadata" <# if ( data.width ) { #>width="{{ data.width }}"<# } #> <# if ( data.height ) { #>height="{{ data.height }}"<# } #> <# if ( data.image && data.image.src !== data.icon ) { #>poster="{{ data.image.src }}"<# } #>> <source type="{{ data.mime }}" src="{{ data.url }}" /> </video> </div> <# } #> <div class="attachment-actions"> <# if ( 'image' === data.type && ! data.uploading && data.sizes && data.can.save ) { #> <button type="button" class="button edit-attachment">Edit Image</button> <# } else if ( 'pdf' === data.subtype && data.sizes ) { #> <p>Document Preview</p> <# } #> </div> </div> </div> <div class="attachment-info"> <span class="settings-save-status" role="status"> <span class="spinner"></span> <span class="saved">Saved.</span> </span> <div class="details"> <h2 class="screen-reader-text">Details</h2> <div class="uploaded"><strong>Uploaded on:</strong> {{ data.dateFormatted }}</div> <div class="uploaded-by"> <strong>Uploaded by:</strong> <# if ( data.authorLink ) { #> <a href="{{ data.authorLink }}">{{ data.authorName }}</a> <# } else { #> {{ data.authorName }} <# } #> </div> <# if ( data.uploadedToTitle ) { #> <div class="uploaded-to"> <strong>Uploaded to:</strong> <# if ( data.uploadedToLink ) { #> <a href="{{ data.uploadedToLink }}">{{ data.uploadedToTitle }}</a> <# } else { #> {{ data.uploadedToTitle }} <# } #> </div> <# } #> <div class="filename"><strong>File name:</strong> {{ data.filename }}</div> <div class="file-type"><strong>File type:</strong> {{ data.mime }}</div> <div class="file-size"><strong>File size:</strong> {{ data.filesizeHumanReadable }}</div> <# if ( 'image' === data.type && ! data.uploading ) { #> <# if ( data.width && data.height ) { #> <div class="dimensions"><strong>Dimensions:</strong> {{ data.width }} by {{ data.height }} pixels </div> <# } #> <# if ( data.originalImageURL && data.originalImageName ) { #> <div class="word-wrap-break-word"> Original image: <a href="{{ data.originalImageURL }}">{{data.originalImageName}}</a> </div> <# } #> <# } #> <# if ( data.fileLength && data.fileLengthHumanReadable ) { #> <div class="file-length"><strong>Length:</strong> <span aria-hidden="true">{{ data.fileLength }}</span> <span class="screen-reader-text">{{ data.fileLengthHumanReadable }}</span> </div> <# } #> <# if ( 'audio' === data.type && data.meta.bitrate ) { #> <div class="bitrate"> <strong>Bitrate:</strong> {{ Math.round( data.meta.bitrate / 1000 ) }}kb/s <# if ( data.meta.bitrate_mode ) { #> {{ ' ' + data.meta.bitrate_mode.toUpperCase() }} <# } #> </div> <# } #> <# if ( data.mediaStates ) { #> <div class="media-states"><strong>Used as:</strong> {{ data.mediaStates }}</div> <# } #> <div class="compat-meta"> <# if ( data.compat && data.compat.meta ) { #> {{{ data.compat.meta }}} <# } #> </div> </div> <div class="settings"> <# var maybeReadOnly = data.can.save || data.allowLocalEdits ? '' : 'readonly'; #> <# if ( 'image' === data.type ) { #> <span class="setting alt-text has-description" data-setting="alt"> <label for="attachment-details-two-column-alt-text" class="name">Alternative Text</label> <textarea id="attachment-details-two-column-alt-text" aria-describedby="alt-text-description" {{ maybeReadOnly }}>{{ data.alt }}</textarea> </span> <p class="description" id="alt-text-description"><a href="https://www.w3.org/WAI/tutorials/images/decision-tree" target="_blank" rel="noopener">Learn how to describe the purpose of the image<span class="screen-reader-text"> (opens in a new tab)</span></a>. Leave empty if the image is purely decorative.</p> <# } #> <span class="setting" data-setting="title"> <label for="attachment-details-two-column-title" class="name">Title</label> <input type="text" id="attachment-details-two-column-title" value="{{ data.title }}" {{ maybeReadOnly }} /> </span> <# if ( 'audio' === data.type ) { #> <span class="setting" data-setting="artist"> <label for="attachment-details-two-column-artist" class="name">Artist</label> <input type="text" id="attachment-details-two-column-artist" value="{{ data.artist || data.meta.artist || '' }}" /> </span> <span class="setting" data-setting="album"> <label for="attachment-details-two-column-album" class="name">Album</label> <input type="text" id="attachment-details-two-column-album" value="{{ data.album || data.meta.album || '' }}" /> </span> <# } #> <span class="setting" data-setting="caption"> <label for="attachment-details-two-column-caption" class="name">Caption</label> <textarea id="attachment-details-two-column-caption" {{ maybeReadOnly }}>{{ data.caption }}</textarea> </span> <span class="setting" data-setting="description"> <label for="attachment-details-two-column-description" class="name">Description</label> <textarea id="attachment-details-two-column-description" {{ maybeReadOnly }}>{{ data.description }}</textarea> </span> <span class="setting" data-setting="url"> <label for="attachment-details-two-column-copy-link" class="name">File URL:</label> <input type="text" class="attachment-details-copy-link" id="attachment-details-two-column-copy-link" value="{{ data.url }}" readonly /> <span class="copy-to-clipboard-container"> <button type="button" class="button button-small copy-attachment-url" data-clipboard-target="#attachment-details-two-column-copy-link">Copy URL to clipboard</button> <span class="success hidden" aria-hidden="true">Copied!</span> </span> </span> <div class="attachment-compat"></div> </div> <div class="actions"> <# if ( data.link ) { #> <a class="view-attachment" href="{{ data.link }}">View attachment page</a> <# } #> <# if ( data.can.save ) { #> <# if ( data.link ) { #> <span class="links-separator">|</span> <# } #> <a href="{{ data.editLink }}">Edit more details</a> <# } #> <# if ( ! data.uploading && data.can.remove ) { #> <# if ( data.link || data.can.save ) { #> <span class="links-separator">|</span> <# } #> <button type="button" class="button-link delete-attachment">Delete permanently</button> <# } #> </div> </div> </script> <script type="text/html" id="tmpl-attachment"> <div class="attachment-preview js--select-attachment type-{{ data.type }} subtype-{{ data.subtype }} {{ data.orientation }}"> <div class="thumbnail"> <# if ( data.uploading ) { #> <div class="media-progress-bar"><div style="width: {{ data.percent }}%"></div></div> <# } else if ( 'image' === data.type && data.size && data.size.url ) { #> <div class="centered"> <img src="{{ data.size.url }}" draggable="false" alt="" /> </div> <# } else { #> <div class="centered"> <# if ( data.image && data.image.src && data.image.src !== data.icon ) { #> <img src="{{ data.image.src }}" class="thumbnail" draggable="false" alt="" /> <# } else if ( data.sizes && data.sizes.medium ) { #> <img src="{{ data.sizes.medium.url }}" class="thumbnail" draggable="false" alt="" /> <# } else { #> <img src="{{ data.icon }}" class="icon" draggable="false" alt="" /> <# } #> </div> <div class="filename"> <div>{{ data.filename }}</div> </div> <# } #> </div> <# if ( data.buttons.close ) { #> <button type="button" class="button-link attachment-close media-modal-icon"><span class="screen-reader-text">Remove</span></button> <# } #> </div> <# if ( data.buttons.check ) { #> <button type="button" class="check" tabindex="-1"><span class="media-modal-icon"></span><span class="screen-reader-text">Deselect</span></button> <# } #> <# var maybeReadOnly = data.can.save || data.allowLocalEdits ? '' : 'readonly'; if ( data.describe ) { if ( 'image' === data.type ) { #> <input type="text" value="{{ data.caption }}" class="describe" data-setting="caption" aria-label="Caption" placeholder="Caption…" {{ maybeReadOnly }} /> <# } else { #> <input type="text" value="{{ data.title }}" class="describe" data-setting="title" <# if ( 'video' === data.type ) { #> aria-label="Video title" placeholder="Video title…" <# } else if ( 'audio' === data.type ) { #> aria-label="Audio title" placeholder="Audio title…" <# } else { #> aria-label="Media title" placeholder="Media title…" <# } #> {{ maybeReadOnly }} /> <# } } #> </script> <script type="text/html" id="tmpl-attachment-details"> <h2> Attachment Details <span class="settings-save-status" role="status"> <span class="spinner"></span> <span class="saved">Saved.</span> </span> </h2> <div class="attachment-info"> <# if ( 'audio' === data.type ) { #> <div class="wp-media-wrapper wp-audio"> <audio style="visibility: hidden" controls class="wp-audio-shortcode" width="100%" preload="none"> <source type="{{ data.mime }}" src="{{ data.url }}" /> </audio> </div> <# } else if ( 'video' === data.type ) { var w_rule = ''; if ( data.width ) { w_rule = 'width: ' + data.width + 'px;'; } else if ( wp.media.view.settings.contentWidth ) { w_rule = 'width: ' + wp.media.view.settings.contentWidth + 'px;'; } #> <div style="{{ w_rule }}" class="wp-media-wrapper wp-video"> <video controls="controls" class="wp-video-shortcode" preload="metadata" <# if ( data.width ) { #>width="{{ data.width }}"<# } #> <# if ( data.height ) { #>height="{{ data.height }}"<# } #> <# if ( data.image && data.image.src !== data.icon ) { #>poster="{{ data.image.src }}"<# } #>> <source type="{{ data.mime }}" src="{{ data.url }}" /> </video> </div> <# } else { #> <div class="thumbnail thumbnail-{{ data.type }}"> <# if ( data.uploading ) { #> <div class="media-progress-bar"><div></div></div> <# } else if ( 'image' === data.type && data.size && data.size.url ) { #> <img src="{{ data.size.url }}" draggable="false" alt="" /> <# } else { #> <img src="{{ data.icon }}" class="icon" draggable="false" alt="" /> <# } #> </div> <# } #> <div class="details"> <div class="filename">{{ data.filename }}</div> <div class="uploaded">{{ data.dateFormatted }}</div> <div class="file-size">{{ data.filesizeHumanReadable }}</div> <# if ( 'image' === data.type && ! data.uploading ) { #> <# if ( data.width && data.height ) { #> <div class="dimensions"> {{ data.width }} by {{ data.height }} pixels </div> <# } #> <# if ( data.originalImageURL && data.originalImageName ) { #> <div class="word-wrap-break-word"> Original image: <a href="{{ data.originalImageURL }}">{{data.originalImageName}}</a> </div> <# } #> <# if ( data.can.save && data.sizes ) { #> <a class="edit-attachment" href="{{ data.editLink }}&image-editor" target="_blank">Edit Image</a> <# } #> <# } #> <# if ( data.fileLength && data.fileLengthHumanReadable ) { #> <div class="file-length">Length: <span aria-hidden="true">{{ data.fileLength }}</span> <span class="screen-reader-text">{{ data.fileLengthHumanReadable }}</span> </div> <# } #> <# if ( data.mediaStates ) { #> <div class="media-states"><strong>Used as:</strong> {{ data.mediaStates }}</div> <# } #> <# if ( ! data.uploading && data.can.remove ) { #> <button type="button" class="button-link delete-attachment">Delete permanently</button> <# } #> <div class="compat-meta"> <# if ( data.compat && data.compat.meta ) { #> {{{ data.compat.meta }}} <# } #> </div> </div> </div> <# var maybeReadOnly = data.can.save || data.allowLocalEdits ? '' : 'readonly'; #> <# if ( 'image' === data.type ) { #> <span class="setting alt-text has-description" data-setting="alt"> <label for="attachment-details-alt-text" class="name">Alt Text</label> <textarea id="attachment-details-alt-text" aria-describedby="alt-text-description" {{ maybeReadOnly }}>{{ data.alt }}</textarea> </span> <p class="description" id="alt-text-description"><a href="https://www.w3.org/WAI/tutorials/images/decision-tree" target="_blank" rel="noopener">Learn how to describe the purpose of the image<span class="screen-reader-text"> (opens in a new tab)</span></a>. Leave empty if the image is purely decorative.</p> <# } #> <span class="setting" data-setting="title"> <label for="attachment-details-title" class="name">Title</label> <input type="text" id="attachment-details-title" value="{{ data.title }}" {{ maybeReadOnly }} /> </span> <# if ( 'audio' === data.type ) { #> <span class="setting" data-setting="artist"> <label for="attachment-details-artist" class="name">Artist</label> <input type="text" id="attachment-details-artist" value="{{ data.artist || data.meta.artist || '' }}" /> </span> <span class="setting" data-setting="album"> <label for="attachment-details-album" class="name">Album</label> <input type="text" id="attachment-details-album" value="{{ data.album || data.meta.album || '' }}" /> </span> <# } #> <span class="setting" data-setting="caption"> <label for="attachment-details-caption" class="name">Caption</label> <textarea id="attachment-details-caption" {{ maybeReadOnly }}>{{ data.caption }}</textarea> </span> <span class="setting" data-setting="description"> <label for="attachment-details-description" class="name">Description</label> <textarea id="attachment-details-description" {{ maybeReadOnly }}>{{ data.description }}</textarea> </span> <span class="setting" data-setting="url"> <label for="attachment-details-copy-link" class="name">File URL:</label> <input type="text" class="attachment-details-copy-link" id="attachment-details-copy-link" value="{{ data.url }}" readonly /> <div class="copy-to-clipboard-container"> <button type="button" class="button button-small copy-attachment-url" data-clipboard-target="#attachment-details-copy-link">Copy URL to clipboard</button> <span class="success hidden" aria-hidden="true">Copied!</span> </div> </span> </script> <script type="text/html" id="tmpl-media-selection"> <div class="selection-info"> <span class="count"></span> <# if ( data.editable ) { #> <button type="button" class="button-link edit-selection">Edit Selection</button> <# } #> <# if ( data.clearable ) { #> <button type="button" class="button-link clear-selection">Clear</button> <# } #> </div> <div class="selection-view"></div> </script> <script type="text/html" id="tmpl-attachment-display-settings"> <h2>Attachment Display Settings</h2> <# if ( 'image' === data.type ) { #> <span class="setting align"> <label for="attachment-display-settings-alignment" class="name">Alignment</label> <select id="attachment-display-settings-alignment" class="alignment" data-setting="align" <# if ( data.userSettings ) { #> data-user-setting="align" <# } #>> <option value="left"> Left </option> <option value="center"> Center </option> <option value="right"> Right </option> <option value="none" selected> None </option> </select> </span> <# } #> <span class="setting"> <label for="attachment-display-settings-link-to" class="name"> <# if ( data.model.canEmbed ) { #> Embed or Link <# } else { #> Link To <# } #> </label> <select id="attachment-display-settings-link-to" class="link-to" data-setting="link" <# if ( data.userSettings && ! data.model.canEmbed ) { #> data-user-setting="urlbutton" <# } #>> <# if ( data.model.canEmbed ) { #> <option value="embed" selected> Embed Media Player </option> <option value="file"> <# } else { #> <option value="none" selected> None </option> <option value="file"> <# } #> <# if ( data.model.canEmbed ) { #> Link to Media File <# } else { #> Media File <# } #> </option> <option value="post"> <# if ( data.model.canEmbed ) { #> Link to Attachment Page <# } else { #> Attachment Page <# } #> </option> <# if ( 'image' === data.type ) { #> <option value="custom"> Custom URL </option> <# } #> </select> </span> <span class="setting"> <label for="attachment-display-settings-link-to-custom" class="name">URL</label> <input type="text" id="attachment-display-settings-link-to-custom" class="link-to-custom" data-setting="linkUrl" /> </span> <# if ( 'undefined' !== typeof data.sizes ) { #> <span class="setting"> <label for="attachment-display-settings-size" class="name">Size</label> <select id="attachment-display-settings-size" class="size" name="size" data-setting="size" <# if ( data.userSettings ) { #> data-user-setting="imgsize" <# } #>> <# var size = data.sizes['thumbnail']; if ( size ) { #> <option value="thumbnail" > Thumbnail – {{ size.width }} × {{ size.height }} </option> <# } #> <# var size = data.sizes['medium']; if ( size ) { #> <option value="medium" > Medium – {{ size.width }} × {{ size.height }} </option> <# } #> <# var size = data.sizes['large']; if ( size ) { #> <option value="large" > Large – {{ size.width }} × {{ size.height }} </option> <# } #> <# var size = data.sizes['full']; if ( size ) { #> <option value="full" selected='selected'> Full Size – {{ size.width }} × {{ size.height }} </option> <# } #> </select> </span> <# } #> </script> <script type="text/html" id="tmpl-gallery-settings"> <h2>Gallery Settings</h2> <span class="setting"> <label for="gallery-settings-link-to" class="name">Link To</label> <select id="gallery-settings-link-to" class="link-to" data-setting="link" <# if ( data.userSettings ) { #> data-user-setting="urlbutton" <# } #>> <option value="post" <# if ( ! wp.media.galleryDefaults.link || 'post' === wp.media.galleryDefaults.link ) { #>selected="selected"<# } #>> Attachment Page </option> <option value="file" <# if ( 'file' === wp.media.galleryDefaults.link ) { #>selected="selected"<# } #>> Media File </option> <option value="none" <# if ( 'none' === wp.media.galleryDefaults.link ) { #>selected="selected"<# } #>> None </option> </select> </span> <span class="setting"> <label for="gallery-settings-columns" class="name select-label-inline">Columns</label> <select id="gallery-settings-columns" class="columns" name="columns" data-setting="columns"> <option value="1" <# if ( 1 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } #>> 1 </option> <option value="2" <# if ( 2 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } #>> 2 </option> <option value="3" <# if ( 3 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } #>> 3 </option> <option value="4" <# if ( 4 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } #>> 4 </option> <option value="5" <# if ( 5 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } #>> 5 </option> <option value="6" <# if ( 6 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } #>> 6 </option> <option value="7" <# if ( 7 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } #>> 7 </option> <option value="8" <# if ( 8 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } #>> 8 </option> <option value="9" <# if ( 9 == wp.media.galleryDefaults.columns ) { #>selected="selected"<# } #>> 9 </option> </select> </span> <span class="setting"> <input type="checkbox" id="gallery-settings-random-order" data-setting="_orderbyRandom" /> <label for="gallery-settings-random-order" class="checkbox-label-inline">Random Order</label> </span> <span class="setting size"> <label for="gallery-settings-size" class="name">Size</label> <select id="gallery-settings-size" class="size" name="size" data-setting="size" <# if ( data.userSettings ) { #> data-user-setting="imgsize" <# } #> > <option value="thumbnail"> Thumbnail </option> <option value="medium"> Medium </option> <option value="large"> Large </option> <option value="full"> Full Size </option> </select> </span> </script> <script type="text/html" id="tmpl-playlist-settings"> <h2>Playlist Settings</h2> <# var emptyModel = _.isEmpty( data.model ), isVideo = 'video' === data.controller.get('library').props.get('type'); #> <span class="setting"> <input type="checkbox" id="playlist-settings-show-list" data-setting="tracklist" <# if ( emptyModel ) { #> checked="checked" <# } #> /> <label for="playlist-settings-show-list" class="checkbox-label-inline"> <# if ( isVideo ) { #> Show Video List <# } else { #> Show Tracklist <# } #> </label> </span> <# if ( ! isVideo ) { #> <span class="setting"> <input type="checkbox" id="playlist-settings-show-artist" data-setting="artists" <# if ( emptyModel ) { #> checked="checked" <# } #> /> <label for="playlist-settings-show-artist" class="checkbox-label-inline"> Show Artist Name in Tracklist </label> </span> <# } #> <span class="setting"> <input type="checkbox" id="playlist-settings-show-images" data-setting="images" <# if ( emptyModel ) { #> checked="checked" <# } #> /> <label for="playlist-settings-show-images" class="checkbox-label-inline"> Show Images </label> </span> </script> <script type="text/html" id="tmpl-embed-link-settings"> <span class="setting link-text"> <label for="embed-link-settings-link-text" class="name">Link Text</label> <input type="text" id="embed-link-settings-link-text" class="alignment" data-setting="linkText" /> </span> <div class="embed-container" style="display: none;"> <div class="embed-preview"></div> </div> </script> <script type="text/html" id="tmpl-embed-image-settings"> <div class="wp-clearfix"> <div class="thumbnail"> <img src="{{ data.model.url }}" draggable="false" alt="" /> </div> </div> <span class="setting alt-text has-description"> <label for="embed-image-settings-alt-text" class="name">Alternative Text</label> <textarea id="embed-image-settings-alt-text" data-setting="alt" aria-describedby="alt-text-description"></textarea> </span> <p class="description" id="alt-text-description"><a href="https://www.w3.org/WAI/tutorials/images/decision-tree" target="_blank" rel="noopener">Learn how to describe the purpose of the image<span class="screen-reader-text"> (opens in a new tab)</span></a>. Leave empty if the image is purely decorative.</p> <span class="setting caption"> <label for="embed-image-settings-caption" class="name">Caption</label> <textarea id="embed-image-settings-caption" data-setting="caption"></textarea> </span> <fieldset class="setting-group"> <legend class="name">Align</legend> <span class="setting align"> <span class="button-group button-large" data-setting="align"> <button class="button" value="left"> Left </button> <button class="button" value="center"> Center </button> <button class="button" value="right"> Right </button> <button class="button active" value="none"> None </button> </span> </span> </fieldset> <fieldset class="setting-group"> <legend class="name">Link To</legend> <span class="setting link-to"> <span class="button-group button-large" data-setting="link"> <button class="button" value="file"> Image URL </button> <button class="button" value="custom"> Custom URL </button> <button class="button active" value="none"> None </button> </span> </span> <span class="setting"> <label for="embed-image-settings-link-to-custom" class="name">URL</label> <input type="text" id="embed-image-settings-link-to-custom" class="link-to-custom" data-setting="linkUrl" /> </span> </fieldset> </script> <script type="text/html" id="tmpl-image-details"> <div class="media-embed"> <div class="embed-media-settings"> <div class="column-settings"> <span class="setting alt-text has-description"> <label for="image-details-alt-text" class="name">Alternative Text</label> <textarea id="image-details-alt-text" data-setting="alt" aria-describedby="alt-text-description">{{ data.model.alt }}</textarea> </span> <p class="description" id="alt-text-description"><a href="https://www.w3.org/WAI/tutorials/images/decision-tree" target="_blank" rel="noopener">Learn how to describe the purpose of the image<span class="screen-reader-text"> (opens in a new tab)</span></a>. Leave empty if the image is purely decorative.</p> <span class="setting caption"> <label for="image-details-caption" class="name">Caption</label> <textarea id="image-details-caption" data-setting="caption">{{ data.model.caption }}</textarea> </span> <h2>Display Settings</h2> <fieldset class="setting-group"> <legend class="legend-inline">Align</legend> <span class="setting align"> <span class="button-group button-large" data-setting="align"> <button class="button" value="left"> Left </button> <button class="button" value="center"> Center </button> <button class="button" value="right"> Right </button> <button class="button active" value="none"> None </button> </span> </span> </fieldset> <# if ( data.attachment ) { #> <# if ( 'undefined' !== typeof data.attachment.sizes ) { #> <span class="setting size"> <label for="image-details-size" class="name">Size</label> <select id="image-details-size" class="size" name="size" data-setting="size" <# if ( data.userSettings ) { #> data-user-setting="imgsize" <# } #>> <# var size = data.sizes['thumbnail']; if ( size ) { #> <option value="thumbnail"> Thumbnail – {{ size.width }} × {{ size.height }} </option> <# } #> <# var size = data.sizes['medium']; if ( size ) { #> <option value="medium"> Medium – {{ size.width }} × {{ size.height }} </option> <# } #> <# var size = data.sizes['large']; if ( size ) { #> <option value="large"> Large – {{ size.width }} × {{ size.height }} </option> <# } #> <# var size = data.sizes['full']; if ( size ) { #> <option value="full"> Full Size – {{ size.width }} × {{ size.height }} </option> <# } #> <option value="custom"> Custom Size </option> </select> </span> <# } #> <div class="custom-size wp-clearfix<# if ( data.model.size !== 'custom' ) { #> hidden<# } #>"> <span class="custom-size-setting"> <label for="image-details-size-width">Width</label> <input type="number" id="image-details-size-width" aria-describedby="image-size-desc" data-setting="customWidth" step="1" value="{{ data.model.customWidth }}" /> </span> <span class="sep" aria-hidden="true">×</span> <span class="custom-size-setting"> <label for="image-details-size-height">Height</label> <input type="number" id="image-details-size-height" aria-describedby="image-size-desc" data-setting="customHeight" step="1" value="{{ data.model.customHeight }}" /> </span> <p id="image-size-desc" class="description">Image size in pixels</p> </div> <# } #> <span class="setting link-to"> <label for="image-details-link-to" class="name">Link To</label> <select id="image-details-link-to" data-setting="link"> <# if ( data.attachment ) { #> <option value="file"> Media File </option> <option value="post"> Attachment Page </option> <# } else { #> <option value="file"> Image URL </option> <# } #> <option value="custom"> Custom URL </option> <option value="none"> None </option> </select> </span> <span class="setting"> <label for="image-details-link-to-custom" class="name">URL</label> <input type="text" id="image-details-link-to-custom" class="link-to-custom" data-setting="linkUrl" /> </span> <div class="advanced-section"> <h2><button type="button" class="button-link advanced-toggle">Advanced Options</button></h2> <div class="advanced-settings hidden"> <div class="advanced-image"> <span class="setting title-text"> <label for="image-details-title-attribute" class="name">Image Title Attribute</label> <input type="text" id="image-details-title-attribute" data-setting="title" value="{{ data.model.title }}" /> </span> <span class="setting extra-classes"> <label for="image-details-css-class" class="name">Image CSS Class</label> <input type="text" id="image-details-css-class" data-setting="extraClasses" value="{{ data.model.extraClasses }}" /> </span> </div> <div class="advanced-link"> <span class="setting link-target"> <input type="checkbox" id="image-details-link-target" data-setting="linkTargetBlank" value="_blank" <# if ( data.model.linkTargetBlank ) { #>checked="checked"<# } #>> <label for="image-details-link-target" class="checkbox-label">Open link in a new tab</label> </span> <span class="setting link-rel"> <label for="image-details-link-rel" class="name">Link Rel</label> <input type="text" id="image-details-link-rel" data-setting="linkRel" value="{{ data.model.linkRel }}" /> </span> <span class="setting link-class-name"> <label for="image-details-link-css-class" class="name">Link CSS Class</label> <input type="text" id="image-details-link-css-class" data-setting="linkClassName" value="{{ data.model.linkClassName }}" /> </span> </div> </div> </div> </div> <div class="column-image"> <div class="image"> <img src="{{ data.model.url }}" draggable="false" alt="" /> <# if ( data.attachment && window.imageEdit ) { #> <div class="actions"> <input type="button" class="edit-attachment button" value="Edit Original" /> <input type="button" class="replace-attachment button" value="Replace" /> </div> <# } #> </div> </div> </div> </div> </script> <script type="text/html" id="tmpl-image-editor"> <div id="media-head-{{ data.id }}"></div> <div id="image-editor-{{ data.id }}"></div> </script> <script type="text/html" id="tmpl-audio-details"> <# var ext, html5types = { mp3: wp.media.view.settings.embedMimes.mp3, ogg: wp.media.view.settings.embedMimes.ogg }; #> <div class="media-embed media-embed-details"> <div class="embed-media-settings embed-audio-settings"> <audio style="visibility: hidden" controls class="wp-audio-shortcode" width="{{ _.isUndefined( data.model.width ) ? 400 : data.model.width }}" preload="{{ _.isUndefined( data.model.preload ) ? 'none' : data.model.preload }}" <# if ( ! _.isUndefined( data.model.autoplay ) && data.model.autoplay ) { #> autoplay<# } if ( ! _.isUndefined( data.model.loop ) && data.model.loop ) { #> loop<# } #> > <# if ( ! _.isEmpty( data.model.src ) ) { #> <source src="{{ data.model.src }}" type="{{ wp.media.view.settings.embedMimes[ data.model.src.split('.').pop() ] }}" /> <# } #> <# if ( ! _.isEmpty( data.model.mp3 ) ) { #> <source src="{{ data.model.mp3 }}" type="{{ wp.media.view.settings.embedMimes[ 'mp3' ] }}" /> <# } #> <# if ( ! _.isEmpty( data.model.ogg ) ) { #> <source src="{{ data.model.ogg }}" type="{{ wp.media.view.settings.embedMimes[ 'ogg' ] }}" /> <# } #> <# if ( ! _.isEmpty( data.model.flac ) ) { #> <source src="{{ data.model.flac }}" type="{{ wp.media.view.settings.embedMimes[ 'flac' ] }}" /> <# } #> <# if ( ! _.isEmpty( data.model.m4a ) ) { #> <source src="{{ data.model.m4a }}" type="{{ wp.media.view.settings.embedMimes[ 'm4a' ] }}" /> <# } #> <# if ( ! _.isEmpty( data.model.wav ) ) { #> <source src="{{ data.model.wav }}" type="{{ wp.media.view.settings.embedMimes[ 'wav' ] }}" /> <# } #> </audio> <# if ( ! _.isEmpty( data.model.src ) ) { ext = data.model.src.split('.').pop(); if ( html5types[ ext ] ) { delete html5types[ ext ]; } #> <span class="setting"> <label for="audio-details-source" class="name">URL</label> <input type="text" id="audio-details-source" readonly data-setting="src" value="{{ data.model.src }}" /> <button type="button" class="button-link remove-setting">Remove audio source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.mp3 ) ) { if ( ! _.isUndefined( html5types.mp3 ) ) { delete html5types.mp3; } #> <span class="setting"> <label for="audio-details-mp3-source" class="name">MP3</label> <input type="text" id="audio-details-mp3-source" readonly data-setting="mp3" value="{{ data.model.mp3 }}" /> <button type="button" class="button-link remove-setting">Remove audio source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.ogg ) ) { if ( ! _.isUndefined( html5types.ogg ) ) { delete html5types.ogg; } #> <span class="setting"> <label for="audio-details-ogg-source" class="name">OGG</label> <input type="text" id="audio-details-ogg-source" readonly data-setting="ogg" value="{{ data.model.ogg }}" /> <button type="button" class="button-link remove-setting">Remove audio source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.flac ) ) { if ( ! _.isUndefined( html5types.flac ) ) { delete html5types.flac; } #> <span class="setting"> <label for="audio-details-flac-source" class="name">FLAC</label> <input type="text" id="audio-details-flac-source" readonly data-setting="flac" value="{{ data.model.flac }}" /> <button type="button" class="button-link remove-setting">Remove audio source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.m4a ) ) { if ( ! _.isUndefined( html5types.m4a ) ) { delete html5types.m4a; } #> <span class="setting"> <label for="audio-details-m4a-source" class="name">M4A</label> <input type="text" id="audio-details-m4a-source" readonly data-setting="m4a" value="{{ data.model.m4a }}" /> <button type="button" class="button-link remove-setting">Remove audio source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.wav ) ) { if ( ! _.isUndefined( html5types.wav ) ) { delete html5types.wav; } #> <span class="setting"> <label for="audio-details-wav-source" class="name">WAV</label> <input type="text" id="audio-details-wav-source" readonly data-setting="wav" value="{{ data.model.wav }}" /> <button type="button" class="button-link remove-setting">Remove audio source</button> </span> <# } #> <# if ( ! _.isEmpty( html5types ) ) { #> <fieldset class="setting-group"> <legend class="name">Add alternate sources for maximum HTML5 playback</legend> <span class="setting"> <span class="button-large"> <# _.each( html5types, function (mime, type) { #> <button class="button add-media-source" data-mime="{{ mime }}">{{ type }}</button> <# } ) #> </span> </span> </fieldset> <# } #> <fieldset class="setting-group"> <legend class="name">Preload</legend> <span class="setting preload"> <span class="button-group button-large" data-setting="preload"> <button class="button" value="auto">Auto</button> <button class="button" value="metadata">Metadata</button> <button class="button active" value="none">None</button> </span> </span> </fieldset> <span class="setting-group"> <span class="setting checkbox-setting autoplay"> <input type="checkbox" id="audio-details-autoplay" data-setting="autoplay" /> <label for="audio-details-autoplay" class="checkbox-label">Autoplay</label> </span> <span class="setting checkbox-setting"> <input type="checkbox" id="audio-details-loop" data-setting="loop" /> <label for="audio-details-loop" class="checkbox-label">Loop</label> </span> </span> </div> </div> </script> <script type="text/html" id="tmpl-video-details"> <# var ext, html5types = { mp4: wp.media.view.settings.embedMimes.mp4, ogv: wp.media.view.settings.embedMimes.ogv, webm: wp.media.view.settings.embedMimes.webm }; #> <div class="media-embed media-embed-details"> <div class="embed-media-settings embed-video-settings"> <div class="wp-video-holder"> <# var w = ! data.model.width || data.model.width > 640 ? 640 : data.model.width, h = ! data.model.height ? 360 : data.model.height; if ( data.model.width && w !== data.model.width ) { h = Math.ceil( ( h * w ) / data.model.width ); } #> <# var w_rule = '', classes = [], w, h, settings = wp.media.view.settings, isYouTube = isVimeo = false; if ( ! _.isEmpty( data.model.src ) ) { isYouTube = data.model.src.match(/youtube|youtu\.be/); isVimeo = -1 !== data.model.src.indexOf('vimeo'); } if ( settings.contentWidth && data.model.width >= settings.contentWidth ) { w = settings.contentWidth; } else { w = data.model.width; } if ( w !== data.model.width ) { h = Math.ceil( ( data.model.height * w ) / data.model.width ); } else { h = data.model.height; } if ( w ) { w_rule = 'width: ' + w + 'px; '; } if ( isYouTube ) { classes.push( 'youtube-video' ); } if ( isVimeo ) { classes.push( 'vimeo-video' ); } #> <div style="{{ w_rule }}" class="wp-video"> <video controls class="wp-video-shortcode {{ classes.join( ' ' ) }}" <# if ( w ) { #>width="{{ w }}"<# } #> <# if ( h ) { #>height="{{ h }}"<# } #> <# if ( ! _.isUndefined( data.model.poster ) && data.model.poster ) { #> poster="{{ data.model.poster }}"<# } #> preload ="{{ _.isUndefined( data.model.preload ) ? 'metadata' : data.model.preload }}" <# if ( ! _.isUndefined( data.model.autoplay ) && data.model.autoplay ) { #> autoplay<# } if ( ! _.isUndefined( data.model.loop ) && data.model.loop ) { #> loop<# } #> > <# if ( ! _.isEmpty( data.model.src ) ) { if ( isYouTube ) { #> <source src="{{ data.model.src }}" type="video/youtube" /> <# } else if ( isVimeo ) { #> <source src="{{ data.model.src }}" type="video/vimeo" /> <# } else { #> <source src="{{ data.model.src }}" type="{{ settings.embedMimes[ data.model.src.split('.').pop() ] }}" /> <# } } #> <# if ( data.model.mp4 ) { #> <source src="{{ data.model.mp4 }}" type="{{ settings.embedMimes[ 'mp4' ] }}" /> <# } #> <# if ( data.model.m4v ) { #> <source src="{{ data.model.m4v }}" type="{{ settings.embedMimes[ 'm4v' ] }}" /> <# } #> <# if ( data.model.webm ) { #> <source src="{{ data.model.webm }}" type="{{ settings.embedMimes[ 'webm' ] }}" /> <# } #> <# if ( data.model.ogv ) { #> <source src="{{ data.model.ogv }}" type="{{ settings.embedMimes[ 'ogv' ] }}" /> <# } #> <# if ( data.model.flv ) { #> <source src="{{ data.model.flv }}" type="{{ settings.embedMimes[ 'flv' ] }}" /> <# } #> {{{ data.model.content }}} </video> </div> <# if ( ! _.isEmpty( data.model.src ) ) { ext = data.model.src.split('.').pop(); if ( html5types[ ext ] ) { delete html5types[ ext ]; } #> <span class="setting"> <label for="video-details-source" class="name">URL</label> <input type="text" id="video-details-source" readonly data-setting="src" value="{{ data.model.src }}" /> <button type="button" class="button-link remove-setting">Remove video source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.mp4 ) ) { if ( ! _.isUndefined( html5types.mp4 ) ) { delete html5types.mp4; } #> <span class="setting"> <label for="video-details-mp4-source" class="name">MP4</label> <input type="text" id="video-details-mp4-source" readonly data-setting="mp4" value="{{ data.model.mp4 }}" /> <button type="button" class="button-link remove-setting">Remove video source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.m4v ) ) { if ( ! _.isUndefined( html5types.m4v ) ) { delete html5types.m4v; } #> <span class="setting"> <label for="video-details-m4v-source" class="name">M4V</label> <input type="text" id="video-details-m4v-source" readonly data-setting="m4v" value="{{ data.model.m4v }}" /> <button type="button" class="button-link remove-setting">Remove video source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.webm ) ) { if ( ! _.isUndefined( html5types.webm ) ) { delete html5types.webm; } #> <span class="setting"> <label for="video-details-webm-source" class="name">WEBM</label> <input type="text" id="video-details-webm-source" readonly data-setting="webm" value="{{ data.model.webm }}" /> <button type="button" class="button-link remove-setting">Remove video source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.ogv ) ) { if ( ! _.isUndefined( html5types.ogv ) ) { delete html5types.ogv; } #> <span class="setting"> <label for="video-details-ogv-source" class="name">OGV</label> <input type="text" id="video-details-ogv-source" readonly data-setting="ogv" value="{{ data.model.ogv }}" /> <button type="button" class="button-link remove-setting">Remove video source</button> </span> <# } #> <# if ( ! _.isEmpty( data.model.flv ) ) { if ( ! _.isUndefined( html5types.flv ) ) { delete html5types.flv; } #> <span class="setting"> <label for="video-details-flv-source" class="name">FLV</label> <input type="text" id="video-details-flv-source" readonly data-setting="flv" value="{{ data.model.flv }}" /> <button type="button" class="button-link remove-setting">Remove video source</button> </span> <# } #> </div> <# if ( ! _.isEmpty( html5types ) ) { #> <fieldset class="setting-group"> <legend class="name">Add alternate sources for maximum HTML5 playback</legend> <span class="setting"> <span class="button-large"> <# _.each( html5types, function (mime, type) { #> <button class="button add-media-source" data-mime="{{ mime }}">{{ type }}</button> <# } ) #> </span> </span> </fieldset> <# } #> <# if ( ! _.isEmpty( data.model.poster ) ) { #> <span class="setting"> <label for="video-details-poster-image" class="name">Poster Image</label> <input type="text" id="video-details-poster-image" readonly data-setting="poster" value="{{ data.model.poster }}" /> <button type="button" class="button-link remove-setting">Remove poster image</button> </span> <# } #> <fieldset class="setting-group"> <legend class="name">Preload</legend> <span class="setting preload"> <span class="button-group button-large" data-setting="preload"> <button class="button" value="auto">Auto</button> <button class="button" value="metadata">Metadata</button> <button class="button active" value="none">None</button> </span> </span> </fieldset> <span class="setting-group"> <span class="setting checkbox-setting autoplay"> <input type="checkbox" id="video-details-autoplay" data-setting="autoplay" /> <label for="video-details-autoplay" class="checkbox-label">Autoplay</label> </span> <span class="setting checkbox-setting"> <input type="checkbox" id="video-details-loop" data-setting="loop" /> <label for="video-details-loop" class="checkbox-label">Loop</label> </span> </span> <span class="setting" data-setting="content"> <# var content = ''; if ( ! _.isEmpty( data.model.content ) ) { var tracks = jQuery( data.model.content ).filter( 'track' ); _.each( tracks.toArray(), function( track, index ) { content += track.outerHTML; #> <label for="video-details-track-{{ index }}" class="name">Tracks (subtitles, captions, descriptions, chapters, or metadata)</label> <input class="content-track" type="text" id="video-details-track-{{ index }}" aria-describedby="video-details-track-desc-{{ index }}" value="{{ track.outerHTML }}" /> <span class="description" id="video-details-track-desc-{{ index }}"> The srclang, label, and kind values can be edited to set the video track language and kind. </span> <button type="button" class="button-link remove-setting remove-track">Remove video track</button><br /> <# } ); #> <# } else { #> <span class="name">Tracks (subtitles, captions, descriptions, chapters, or metadata)</span><br /> <em>There are no associated subtitles.</em> <# } #> <textarea class="hidden content-setting">{{ content }}</textarea> </span> </div> </div> </script> <script type="text/html" id="tmpl-editor-gallery"> <# if ( data.attachments.length ) { #> <div class="gallery gallery-columns-{{ data.columns }}"> <# _.each( data.attachments, function( attachment, index ) { #> <dl class="gallery-item"> <dt class="gallery-icon"> <# if ( attachment.thumbnail ) { #> <img src="{{ attachment.thumbnail.url }}" width="{{ attachment.thumbnail.width }}" height="{{ attachment.thumbnail.height }}" alt="{{ attachment.alt }}" /> <# } else { #> <img src="{{ attachment.url }}" alt="{{ attachment.alt }}" /> <# } #> </dt> <# if ( attachment.caption ) { #> <dd class="wp-caption-text gallery-caption"> {{{ data.verifyHTML( attachment.caption ) }}} </dd> <# } #> </dl> <# if ( index % data.columns === data.columns - 1 ) { #> <br style="clear: both;" /> <# } #> <# } ); #> </div> <# } else { #> <div class="wpview-error"> <div class="dashicons dashicons-format-gallery"></div><p>No items found.</p> </div> <# } #> </script> <script type="text/html" id="tmpl-crop-content"> <img class="crop-image" src="{{ data.url }}" alt="Image crop area preview. Requires mouse interaction." /> <div class="upload-errors"></div> </script> <script type="text/html" id="tmpl-site-icon-preview"> <h2>Preview</h2> <strong aria-hidden="true">As a browser icon</strong> <div class="favicon-preview"> <img src="https://www.caloes.ca.gov/wp-admin/images/browser.png" class="browser-preview" width="182" height="" alt="" /> <div class="favicon"> <img id="preview-favicon" src="{{ data.url }}" alt="Preview as a browser icon" /> </div> <span class="browser-title" aria-hidden="true"><# print( 'California Governor\'s Office of Emergency Services' ) #></span> </div> <strong aria-hidden="true">As an app icon</strong> <div class="app-icon-preview"> <img id="preview-app-icon" src="{{ data.url }}" alt="Preview as an app icon" /> </div> </script> <link rel='stylesheet' id='wp-block-library-css' href='https://www.caloes.ca.gov/wp-includes/css/dist/block-library/style.min.css?ver=6.1.2' type='text/css' media='none' onload="media='all'" /> <script type='text/javascript' id='thickbox-js-extra'> /* <![CDATA[ */ var thickboxL10n = {"next":"Next >","prev":"< Prev","image":"Image","of":"of","close":"Close","noiframes":"This feature requires inline frames. You have iframes disabled or your browser does not support them.","loadingAnimation":"https:\/\/www.caloes.ca.gov\/wp-includes\/js\/thickbox\/loadingAnimation.gif"}; /* ]]> */ </script> <script type='text/javascript' defer src='https://www.caloes.ca.gov/wp-includes/js/thickbox/thickbox.js?ver=3.1-20121105' id='thickbox-js'></script> <script type='text/javascript' id='divi-custom-script-js-extra'> /* <![CDATA[ */ var DIVI = {"item_count":"%d Item","items_count":"%d Items"}; var et_builder_utils_params = {"condition":{"diviTheme":true,"extraTheme":false},"scrollLocations":["app","top"],"builderScrollLocations":{"desktop":"app","tablet":"app","phone":"app"},"onloadScrollLocation":"app","builderType":"fe"}; var et_frontend_scripts = {"builderCssContainerPrefix":"#et-boc","builderCssLayoutPrefix":"#et-boc .et-l"}; var et_pb_custom = {"ajaxurl":"https:\/\/www.caloes.ca.gov\/wp-admin\/admin-ajax.php","images_uri":"https:\/\/www.caloes.ca.gov\/wp-content\/themes\/Divi\/images","builder_images_uri":"https:\/\/www.caloes.ca.gov\/wp-content\/themes\/Divi\/includes\/builder\/images","et_frontend_nonce":"58c9c5cef5","subscription_failed":"Please, check the fields below to make sure you entered the correct information.","et_ab_log_nonce":"e00fb60d98","fill_message":"Please, fill in the following fields:","contact_error_message":"Please, fix the following errors:","invalid":"Invalid email","captcha":"Captcha","prev":"Prev","previous":"Previous","next":"Next","wrong_captcha":"You entered the wrong number in captcha.","wrong_checkbox":"Checkbox","ignore_waypoints":"no","is_divi_theme_used":"1","widget_search_selector":".widget_search","ab_tests":[],"is_ab_testing_active":"","page_id":"21773","unique_test_id":"","ab_bounce_rate":"5","is_cache_plugin_active":"no","is_shortcode_tracking":"","tinymce_uri":"https:\/\/www.caloes.ca.gov\/wp-content\/themes\/Divi\/includes\/builder\/frontend-builder\/assets\/vendors","accent_color":"#7EBEC5","waypoints_options":[]}; var et_pb_box_shadow_elements = []; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-content/themes/Divi/js/scripts.min.js?ver=4.19.1' id='divi-custom-script-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-content/themes/Divi/core/admin/js/es6-promise.auto.min.js?ver=4.19.1' id='es6-promise-js'></script> <script type='text/javascript' src='https://www.google.com/recaptcha/api.js?render=6LeHvbcUAAAAAI7PGxP-lqGsgxdcYkLkcCplwark&ver=4.19.1' id='et-recaptcha-v3-js'></script> <script type='text/javascript' id='et-core-api-spam-recaptcha-js-extra'> /* <![CDATA[ */ var et_core_api_spam_recaptcha = {"site_key":"6LeHvbcUAAAAAI7PGxP-lqGsgxdcYkLkcCplwark","page_action":{"action":"gunsafety"}}; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-content/themes/Divi/core/admin/js/recaptcha.js?ver=4.19.1' id='et-core-api-spam-recaptcha-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-content/plugins/breadcrumbs-divi-module/scripts/frontend-bundle.min.js?ver=1.2.2' id='divi-breadcrumbs-frontend-bundle-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/divi/extension/scripts/frontend-bundle.min.js?ver=1.0.0' id='caweb-module-extension-frontend-bundle-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-content/themes/Divi/core/admin/js/common.js?ver=4.19.1' id='et-core-common-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/underscore.min.js?ver=1.13.4' id='underscore-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/shortcode.min.js?ver=6.1.2' id='shortcode-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/backbone.min.js?ver=1.4.1' id='backbone-js'></script> <script type='text/javascript' id='wp-util-js-extra'> /* <![CDATA[ */ var _wpUtilSettings = {"ajax":{"url":"\/wp-admin\/admin-ajax.php"}}; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/wp-util.min.js?ver=6.1.2' id='wp-util-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/wp-backbone.min.js?ver=6.1.2' id='wp-backbone-js'></script> <script type='text/javascript' id='media-models-js-extra'> /* <![CDATA[ */ var _wpMediaModelsL10n = {"settings":{"ajaxurl":"\/wp-admin\/admin-ajax.php","post":{"id":0}}}; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/media-models.min.js?ver=6.1.2' id='media-models-js'></script> <script type='text/javascript' id='wp-plupload-js-extra'> /* <![CDATA[ */ var pluploadL10n = {"queue_limit_exceeded":"You have attempted to queue too many files.","file_exceeds_size_limit":"%s exceeds the maximum upload size for this site.","zero_byte_file":"This file is empty. Please try another.","invalid_filetype":"Sorry, you are not allowed to upload this file type.","not_an_image":"This file is not an image. Please try another.","image_memory_exceeded":"Memory exceeded. Please try another smaller file.","image_dimensions_exceeded":"This is larger than the maximum size. Please try another.","default_error":"An error occurred in the upload. Please try again later.","missing_upload_url":"There was a configuration error. Please contact the server administrator.","upload_limit_exceeded":"You may only upload 1 file.","http_error":"Unexpected response from the server. The file may have been uploaded successfully. Check in the Media Library or reload the page.","http_error_image":"The server cannot process the image. This can happen if the server is busy or does not have enough resources to complete the task. Uploading a smaller image may help. Suggested maximum size is 2560 pixels.","upload_failed":"Upload failed.","big_upload_failed":"Please try uploading this file with the %1$sbrowser uploader%2$s.","big_upload_queued":"%s exceeds the maximum upload size for the multi-file uploader when used in your browser.","io_error":"IO error.","security_error":"Security error.","file_cancelled":"File canceled.","upload_stopped":"Upload stopped.","dismiss":"Dismiss","crunching":"Crunching\u2026","deleted":"moved to the Trash.","error_uploading":"\u201c%s\u201d has failed to upload.","unsupported_image":"This image cannot be displayed in a web browser. For best results convert it to JPEG before uploading.","noneditable_image":"This image cannot be processed by the web server. Convert it to JPEG or PNG before uploading.","file_url_copied":"The file URL has been copied to your clipboard"}; var _wpPluploadSettings = {"defaults":{"file_data_name":"async-upload","url":"\/wp-admin\/async-upload.php","filters":{"max_file_size":"256000000b","mime_types":[{"extensions":"ico,jpg,jpeg,jpe,png,gif,webp,mov,qt,avi,mpeg,mpg,mpe,3gp,3gpp,3g2,3gp2,mid,midi,pdf,doc,docx,docm,pot,pps,ppt,pptx,pptm,odt,ppsx,ppsm,xla,xls,xlt,xlw,xlsx,xlsm,xlsb,key,mp3,m4a,m4b,ogg,oga,flac,wav,mp4,m4v,webm,ogv,flv,xml"}]},"heic_upload_error":true,"multipart_params":{"action":"upload-attachment","_wpnonce":"81abcbbd71"}},"browser":{"mobile":false,"supported":true},"limitExceeded":false}; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/plupload/wp-plupload.min.js?ver=6.1.2' id='wp-plupload-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/jquery/ui/core.min.js?ver=1.13.2' id='jquery-ui-core-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/jquery/ui/mouse.min.js?ver=1.13.2' id='jquery-ui-mouse-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/jquery/ui/sortable.min.js?ver=1.13.2' id='jquery-ui-sortable-js'></script> <script type='text/javascript' id='mediaelement-core-js-before'> var mejsL10n = {"language":"en","strings":{"mejs.download-file":"Download File","mejs.install-flash":"You are using a browser that does not have Flash player enabled or installed. Please turn on your Flash player plugin or download the latest version from https:\/\/get.adobe.com\/flashplayer\/","mejs.fullscreen":"Fullscreen","mejs.play":"Play","mejs.pause":"Pause","mejs.time-slider":"Time Slider","mejs.time-help-text":"Use Left\/Right Arrow keys to advance one second, Up\/Down arrows to advance ten seconds.","mejs.live-broadcast":"Live Broadcast","mejs.volume-help-text":"Use Up\/Down Arrow keys to increase or decrease volume.","mejs.unmute":"Unmute","mejs.mute":"Mute","mejs.volume-slider":"Volume Slider","mejs.video-player":"Video Player","mejs.audio-player":"Audio Player","mejs.captions-subtitles":"Captions\/Subtitles","mejs.captions-chapters":"Chapters","mejs.none":"None","mejs.afrikaans":"Afrikaans","mejs.albanian":"Albanian","mejs.arabic":"Arabic","mejs.belarusian":"Belarusian","mejs.bulgarian":"Bulgarian","mejs.catalan":"Catalan","mejs.chinese":"Chinese","mejs.chinese-simplified":"Chinese (Simplified)","mejs.chinese-traditional":"Chinese (Traditional)","mejs.croatian":"Croatian","mejs.czech":"Czech","mejs.danish":"Danish","mejs.dutch":"Dutch","mejs.english":"English","mejs.estonian":"Estonian","mejs.filipino":"Filipino","mejs.finnish":"Finnish","mejs.french":"French","mejs.galician":"Galician","mejs.german":"German","mejs.greek":"Greek","mejs.haitian-creole":"Haitian Creole","mejs.hebrew":"Hebrew","mejs.hindi":"Hindi","mejs.hungarian":"Hungarian","mejs.icelandic":"Icelandic","mejs.indonesian":"Indonesian","mejs.irish":"Irish","mejs.italian":"Italian","mejs.japanese":"Japanese","mejs.korean":"Korean","mejs.latvian":"Latvian","mejs.lithuanian":"Lithuanian","mejs.macedonian":"Macedonian","mejs.malay":"Malay","mejs.maltese":"Maltese","mejs.norwegian":"Norwegian","mejs.persian":"Persian","mejs.polish":"Polish","mejs.portuguese":"Portuguese","mejs.romanian":"Romanian","mejs.russian":"Russian","mejs.serbian":"Serbian","mejs.slovak":"Slovak","mejs.slovenian":"Slovenian","mejs.spanish":"Spanish","mejs.swahili":"Swahili","mejs.swedish":"Swedish","mejs.tagalog":"Tagalog","mejs.thai":"Thai","mejs.turkish":"Turkish","mejs.ukrainian":"Ukrainian","mejs.vietnamese":"Vietnamese","mejs.welsh":"Welsh","mejs.yiddish":"Yiddish"}}; </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/mediaelement/mediaelement-and-player.min.js?ver=4.2.17' id='mediaelement-core-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/mediaelement/mediaelement-migrate.min.js?ver=6.1.2' id='mediaelement-migrate-js'></script> <script type='text/javascript' id='mediaelement-js-extra'> /* <![CDATA[ */ var _wpmejsSettings = {"pluginPath":"\/wp-includes\/js\/mediaelement\/","classPrefix":"mejs-","stretching":"responsive"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/mediaelement/wp-mediaelement.min.js?ver=6.1.2' id='wp-mediaelement-js'></script> <script type='text/javascript' id='wp-api-request-js-extra'> /* <![CDATA[ */ var wpApiSettings = {"root":"https:\/\/www.caloes.ca.gov\/wp-json\/","nonce":"7538c83141","versionString":"wp\/v2\/"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/api-request.min.js?ver=6.1.2' id='wp-api-request-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/dist/vendor/regenerator-runtime.min.js?ver=0.13.9' id='regenerator-runtime-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/dist/vendor/wp-polyfill.min.js?ver=3.15.0' id='wp-polyfill-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/dist/dom-ready.min.js?ver=392bdd43726760d1f3ca' id='wp-dom-ready-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/dist/hooks.min.js?ver=4169d3cf8e8d95a3d6d5' id='wp-hooks-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/dist/i18n.min.js?ver=9e794f35a71bb98672ae' id='wp-i18n-js'></script> <script type='text/javascript' id='wp-i18n-js-after'> wp.i18n.setLocaleData( { 'text direction\u0004ltr': [ 'ltr' ] } ); </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/dist/a11y.min.js?ver=ecce20f002eda4c19664' id='wp-a11y-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/clipboard.min.js?ver=2.0.11' id='clipboard-js'></script> <script type='text/javascript' id='media-views-js-extra'> /* <![CDATA[ */ var _wpMediaViewsL10n = {"mediaFrameDefaultTitle":"Media","url":"URL","addMedia":"Add media","search":"Search","select":"Select","cancel":"Cancel","update":"Update","replace":"Replace","remove":"Remove","back":"Back","selected":"%d selected","dragInfo":"Drag and drop to reorder media files.","uploadFilesTitle":"Upload files","uploadImagesTitle":"Upload images","mediaLibraryTitle":"Media Library","insertMediaTitle":"Add media","createNewGallery":"Create a new gallery","createNewPlaylist":"Create a new playlist","createNewVideoPlaylist":"Create a new video playlist","returnToLibrary":"\u2190 Go to library","allMediaItems":"All media items","allDates":"All dates","noItemsFound":"No items found.","insertIntoPost":"Insert into post","unattached":"Unattached","mine":"Mine","trash":"Trash","uploadedToThisPost":"Uploaded to this post","warnDelete":"You are about to permanently delete this item from your site.\nThis action cannot be undone.\n 'Cancel' to stop, 'OK' to delete.","warnBulkDelete":"You are about to permanently delete these items from your site.\nThis action cannot be undone.\n 'Cancel' to stop, 'OK' to delete.","warnBulkTrash":"You are about to trash these items.\n 'Cancel' to stop, 'OK' to delete.","bulkSelect":"Bulk select","trashSelected":"Move to Trash","restoreSelected":"Restore from Trash","deletePermanently":"Delete permanently","errorDeleting":"Error in deleting the attachment.","apply":"Apply","filterByDate":"Filter by date","filterByType":"Filter by type","searchLabel":"Search","searchMediaLabel":"Search media","searchMediaPlaceholder":"Search media items...","mediaFound":"Number of media items found: %d","noMedia":"No media items found.","noMediaTryNewSearch":"No media items found. Try a different search.","attachmentDetails":"Attachment details","insertFromUrlTitle":"Insert from URL","setFeaturedImageTitle":"Featured image","setFeaturedImage":"Set featured image","createGalleryTitle":"Create gallery","editGalleryTitle":"Edit gallery","cancelGalleryTitle":"\u2190 Cancel gallery","insertGallery":"Insert gallery","updateGallery":"Update gallery","addToGallery":"Add to gallery","addToGalleryTitle":"Add to gallery","reverseOrder":"Reverse order","imageDetailsTitle":"Image details","imageReplaceTitle":"Replace image","imageDetailsCancel":"Cancel edit","editImage":"Edit image","chooseImage":"Choose image","selectAndCrop":"Select and crop","skipCropping":"Skip cropping","cropImage":"Crop image","cropYourImage":"Crop your image","cropping":"Cropping\u2026","suggestedDimensions":"Suggested image dimensions: %1$s by %2$s pixels.","cropError":"There has been an error cropping your image.","audioDetailsTitle":"Audio details","audioReplaceTitle":"Replace audio","audioAddSourceTitle":"Add audio source","audioDetailsCancel":"Cancel edit","videoDetailsTitle":"Video details","videoReplaceTitle":"Replace video","videoAddSourceTitle":"Add video source","videoDetailsCancel":"Cancel edit","videoSelectPosterImageTitle":"Select poster image","videoAddTrackTitle":"Add subtitles","playlistDragInfo":"Drag and drop to reorder tracks.","createPlaylistTitle":"Create audio playlist","editPlaylistTitle":"Edit audio playlist","cancelPlaylistTitle":"\u2190 Cancel audio playlist","insertPlaylist":"Insert audio playlist","updatePlaylist":"Update audio playlist","addToPlaylist":"Add to audio playlist","addToPlaylistTitle":"Add to Audio Playlist","videoPlaylistDragInfo":"Drag and drop to reorder videos.","createVideoPlaylistTitle":"Create video playlist","editVideoPlaylistTitle":"Edit video playlist","cancelVideoPlaylistTitle":"\u2190 Cancel video playlist","insertVideoPlaylist":"Insert video playlist","updateVideoPlaylist":"Update video playlist","addToVideoPlaylist":"Add to video playlist","addToVideoPlaylistTitle":"Add to video Playlist","filterAttachments":"Filter media","attachmentsList":"Media list","settings":{"tabs":[],"tabUrl":"https:\/\/www.caloes.ca.gov\/wp-admin\/media-upload.php?chromeless=1","mimeTypes":{"image":"Images","audio":"Audio","video":"Video","application\/msword,application\/vnd.openxmlformats-officedocument.wordprocessingml.document,application\/vnd.ms-word.document.macroEnabled.12,application\/vnd.ms-word.template.macroEnabled.12,application\/vnd.oasis.opendocument.text,application\/vnd.apple.pages,application\/pdf,application\/vnd.ms-xpsdocument,application\/oxps,application\/rtf,application\/wordperfect,application\/octet-stream":"Documents","application\/vnd.apple.numbers,application\/vnd.oasis.opendocument.spreadsheet,application\/vnd.ms-excel,application\/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application\/vnd.ms-excel.sheet.macroEnabled.12,application\/vnd.ms-excel.sheet.binary.macroEnabled.12":"Spreadsheets","application\/x-gzip,application\/rar,application\/x-tar,application\/zip,application\/x-7z-compressed":"Archives"},"captions":true,"nonce":{"sendToEditor":"228d5aa82e","setAttachmentThumbnail":"27a22db353"},"post":{"id":0},"defaultProps":{"link":"","align":"","size":""},"attachmentCounts":{"audio":1,"video":1},"oEmbedProxyUrl":"https:\/\/www.caloes.ca.gov\/wp-json\/oembed\/1.0\/proxy","embedExts":["mp3","ogg","flac","m4a","wav","mp4","m4v","webm","ogv","flv"],"embedMimes":{"mp3":"audio\/mpeg","ogg":"audio\/ogg","flac":"audio\/flac","m4a":"audio\/mpeg","wav":"audio\/wav","mp4":"video\/mp4","m4v":"video\/mp4","webm":"video\/webm","ogv":"video\/ogg","flv":"video\/x-flv"},"contentWidth":1080,"months":[{"year":"2024","month":"11","text":"November 2024"},{"year":"2024","month":"10","text":"October 2024"},{"year":"2024","month":"9","text":"September 2024"},{"year":"2024","month":"8","text":"August 2024"},{"year":"2024","month":"7","text":"July 2024"},{"year":"2024","month":"6","text":"June 2024"},{"year":"2024","month":"5","text":"May 2024"},{"year":"2024","month":"4","text":"April 2024"},{"year":"2024","month":"3","text":"March 2024"},{"year":"2024","month":"2","text":"February 2024"},{"year":"2024","month":"1","text":"January 2024"},{"year":"2023","month":"12","text":"December 2023"},{"year":"2023","month":"11","text":"November 2023"},{"year":"2023","month":"10","text":"October 2023"},{"year":"2023","month":"9","text":"September 2023"},{"year":"2023","month":"8","text":"August 2023"},{"year":"2023","month":"7","text":"July 2023"},{"year":"2023","month":"6","text":"June 2023"},{"year":"2023","month":"5","text":"May 2023"},{"year":"2023","month":"4","text":"April 2023"},{"year":"2023","month":"3","text":"March 2023"},{"year":"2023","month":"2","text":"February 2023"},{"year":"2023","month":"1","text":"January 2023"},{"year":"2022","month":"12","text":"December 2022"},{"year":"2022","month":"11","text":"November 2022"},{"year":"2022","month":"10","text":"October 2022"},{"year":"2022","month":"9","text":"September 2022"},{"year":"2022","month":"8","text":"August 2022"},{"year":"2022","month":"7","text":"July 2022"},{"year":"2022","month":"6","text":"June 2022"},{"year":"2022","month":"5","text":"May 2022"},{"year":"2022","month":"4","text":"April 2022"},{"year":"2022","month":"3","text":"March 2022"},{"year":"2022","month":"2","text":"February 2022"},{"year":"2022","month":"1","text":"January 2022"},{"year":"2021","month":"12","text":"December 2021"},{"year":"2021","month":"11","text":"November 2021"},{"year":"2021","month":"10","text":"October 2021"},{"year":"2021","month":"9","text":"September 2021"},{"year":"2021","month":"8","text":"August 2021"}],"mediaTrash":0,"infiniteScrolling":0}}; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/media-views.min.js?ver=6.1.2' id='media-views-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/media-editor.min.js?ver=6.1.2' id='media-editor-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-includes/js/media-audiovideo.min.js?ver=6.1.2' id='media-audiovideo-js'></script> <script type='text/javascript' src='https://www.googletagmanager.com/gtag/js?id=G-69TD0KNT0F&ver=6.1.2' id='google-tag-manager-gtag-js'></script> <script type='text/javascript' id='caweb-script-js-extra'> /* <![CDATA[ */ var args = {"ca_site_version":"5.5","ca_frontpage_search_enabled":"","ca_google_search_id":"18f83ba1b29444716","caweb_multi_ga":"","caweb_multi_ga4":"","caweb_alerts":[{"status":"","header":"Heat Advisory","message":"For information on cooling centers, <strong><a style=\\\"color: #000000; text-decoration: underline;\\\" href=\\\"https:\/\/news.caloes.ca.gov\/coolingcenters\/\\\">click here<\/a><\/strong>","page_display":"all","color":"#7bb0da","button":"","url":"https:\/\/www.caloes.ca.gov\/cal-oes\/active-incidents\/cooling-centers\/","text":"click here","target":"on","icon":"warning-fill"},{"status":"","header":"Storm Advisory","message":"<span style=\\\"font-size: 16pt;\\\"><span style=\\\"color: #000000;\\\">For more information,<\/span> <a href=\\\"https:\/\/news.caloes.ca.gov\/hurricane-hilary\/\\\"><strong>click here<\/strong><\/a>.<\/span>","page_display":"home","color":"#7bb0da","button":"","url":"","text":"More Information","target":"on","icon":"loud-speaker"}],"is_front":"","ca_google_trans_enabled":"","ajaxurl":"https:\/\/www.caloes.ca.gov\/wp-admin\/admin-post.php","path":"\/","ca_google_tag_manager_id":"GTM-5JTZCJC","ca_google_analytic_id":"UA-54732306-2","ca_google_analytic4_id":"G-MDLYGZX10N"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-content/themes/CAWeb-1.7.1/js/caweb-5.5.min.js?ver=6.1.2' id='caweb-script-js'></script> <script type='text/javascript' src='https://www.caloes.ca.gov/wp-content/uploads/caweb-1.7.1-ext/js/pfw-custom-script-v1.7.js?ver=-6746e9e8d82bd6.91070337' id='caweb-external-custom-1-scripts-js'></script> <script type='text/javascript' id='gt_widget_script_86311516-js-before'> window.gtranslateSettings = /* document.write */ window.gtranslateSettings || {};window.gtranslateSettings['86311516'] = {"default_language":"en","languages":["af","sq","am","ar","hy","az","eu","be","bn","bs","bg","ca","ceb","ny","zh-CN","zh-TW","co","hr","cs","da","nl","en","eo","et","tl","fi","fr","fy","gl","ka","de","el","gu","ht","ha","haw","iw","hi","hmn","hu","is","ig","id","ga","it","ja","jw","kn","kk","km","ko","ku","ky","lo","la","lv","lt","lb","mk","mg","ms","ml","mt","mi","mr","mn","my","ne","no","ps","fa","pl","pt","pa","ro","ru","sm","gd","sr","st","sn","sd","si","sk","sl","so","es","su","sw","sv","tg","ta","te","th","tr","uk","ur","uz","vi","cy","xh","yi","yo","zu"],"url_structure":"none","flag_style":"2d","wrapper_selector":"#gt-wrapper-86311516","alt_flags":{"en":"usa"},"float_switcher_open_direction":"top","switcher_horizontal_position":"right","switcher_vertical_position":"top","flags_location":"\/wp-content\/plugins\/gtranslate\/flags\/"}; </script><script src="https://www.caloes.ca.gov/wp-content/plugins/gtranslate/js/float.js?ver=6.1.2" data-no-optimize="1" data-no-minify="1" data-gt-orig-url="/gunsafety/" data-gt-orig-domain="www.caloes.ca.gov" data-gt-widget-id="86311516" defer></script><script type='text/javascript' src='https://www.caloes.ca.gov/wp-content/themes/Divi/includes/builder/feature/dynamic-assets/assets/js/jquery.fitvids.js?ver=4.19.1' id='fitvids-js'></script> <script> $ = jQuery.noConflict(); var media_carousels = $('div[class*="et_pb_ca_fullwidth_section_carousel_"]:not(".item")'); media_carousels.each(function(index, carousel) { if( $(carousel).hasClass('media') || $(carousel).hasClass('panel') ){ $(carousel).find('.carousel-media').owlCarousel({ responsive : true, responsive: { 0: { items: 1, nav: true }, 400: { items: 1, nav: true }, 768: { items: undefined === carousel.slide_amount ? 4 : carousel.slide_amount, nav: true }, }, margin : 10, nav : true, dots : false, navText: [ '<span class="ca-gov-icon-arrow-prev" aria-hidden="true"></span>', '<span class="ca-gov-icon-arrow-next" aria-hidden="true"></span>' ], }); } }) </script> <script> $ = jQuery.noConflict(); var media_carousels = $('div[class*="et_pb_ca_section_carousel_"]:not(".item")'); media_carousels.each(function(index, carousel) { if( $(carousel).hasClass('media') || $(carousel).hasClass('panel') ){ $(carousel).find('.carousel-media').owlCarousel({ responsive : true, responsive: { 0: { items: 1, nav: true }, 400: { items: 1, nav: true }, 768: { items: undefined === carousel.slide_amount ? 4 : carousel.slide_amount, nav: true }, }, margin : 10, nav : true, dots : false, navText: [ '<span class="ca-gov-icon-arrow-prev" aria-hidden="true"></span>', '<span class="ca-gov-icon-arrow-next" aria-hidden="true"></span>' ], }); } }) </script> <script id="hide-title-attributes"> function hide_title_attributes(el){ var t = el.querySelectorAll('[title]'); if(t && t.length > 0){ for(var n=0;n<t.length;++n){ var title=t[n].title; t[n].removeAttribute('title'); t[n].setAttribute('aria-label',title); } } } hide_title_attributes(document.body); document.body.onmouseover = function(e){ if(e.target.innerHTML.indexOf('title=')>-1){ hide_title_attributes(e.target); } else if(e.target.title){ var t=e.target.title; e.target.removeAttribute('title'); e.target.setAttribute('aria-label',t); } } </script> </body> </html> <!-- Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/ Page Caching using Memcached Served from: www.caloes.ca.gov @ 2024-11-27 01:44:09 by W3 Total Cache -->