Olds College LHAP Bylaws related to snow and ice
HTML

Bylaws related to snow and ice

LHAP 303-61-40682 (FA25) - Softscape Maintenance/Snow and Ice Control/Bylaws related to snow and ice.htm

HTML127.0 KB1 video link

Resource Viewer

Preview or play this resource here.

Video Links

Embedded videos found in the source file.

Extracted Text

Extracted from the original source file.

<!DOCTYPE HTML> <html lang="en"> <head> <title>Bylaws related to snow and ice</title> <!--BREACH prevention padding: An.i\KP3%`Wd3q^{&gt;H1&gt;QBA*?[+&#39;v];U.OaC,}JV@=x8`pGu#YZpl.Pl%}V&#39;6)7qE[6&amp; --> <meta property="og:description" content="The City of Calgary governs the use of streets and activities on them, including snow and ice control on sidewalks. Remove snow and ice – down to bare surface – from public sidewalks bordering their private property within 24-hours of a snowfall ending. Owners of rental properties are responsible for arranging for snow and ice removal when they reside elsewhere."/> <meta property="og:title" content="Bylaws related to snow and ice"/> <meta property="og:PageType" content="article"/> <meta property="og:type" content="article"/> <meta property="og:site_name" content="https://www.calgary.ca&quot;/&gt; <meta property="og:url" content="https://www.calgary.ca/bylaws/snow-ice.html&quot;/&gt; <meta property="og:locale" content="en "/> <meta property="og:image:type" content="image/jpeg"/> <meta property="og:image" content="https://www.calgary.ca/content/dam/www/social-media-card-images/default_2021-Social_Media_image.jpg&quot;/&gt; <meta name="twitter:site" content="@cityofcalgary"/> <meta name="twitter:card" content="summary_large_image"/> <meta name="twitter:title" content="Bylaws related to snow and ice"/> <meta name="twitter:image" content="https://www.calgary.ca/content/dam/www/social-media-card-images/default_2021-Social_Media_image.jpg&quot;/&gt; <meta name="twitter:description" content="The City of Calgary governs the use of streets and activities on them, including snow and ice control on sidewalks. Remove snow and ice – down to bare surface – from public sidewalks bordering their private property within 24-hours of a snowfall ending. Owners of rental properties are responsible for arranging for snow and ice removal when they reside elsewhere."/> <meta name="twitter:url" content="https://www.calgary.ca/bylaws/snow-ice.html&quot;/&gt; <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> <meta name="viewport" content="width=device-width, initial-scale=1.0"/> <meta http-equiv="X-UA-Compatible" content="IE=edge"/> <meta name="keywords" content="Emergency Management &amp; Community Safety,Bylaws by topic"/> <meta name="description" content="The City of Calgary governs the use of streets and activities on them, including snow and ice control on sidewalks. Remove snow and ice – down to bare surface – from public sidewalks bordering their private property within 24-hours of a snowfall ending. Owners of rental properties are responsible for arranging for snow and ice removal when they reside elsewhere."/> <meta name="template" content="primary-page-template"/> <meta name="org" content="City of Calgary Administration/Community Services/Emergency Management &amp; Community Safety;"/> <meta name="content-page-type" content="Page Type : Information page;"/> <meta name="oldurl" content="/csps/abs/bylaws-by-topic/snow-ice.html,/bylaws/snow-ice.html"/> <meta name="DC.Creator" content="Information page"/> <meta name="DC.Title" content="Bylaws related to snow and ice"/> <!-- IE --> <link rel="shortcut icon" type="image/vnd.microsoft.icon" href="/etc/clientlibs/www/main/images/favicon.ico"/> <!-- other browsers --> <link rel="icon" type="image/vnd.microsoft.icon" href="/etc/clientlibs/www/main/images/favicon.ico"/> <link href="//fonts.googleapis.com/css?family=Open+Sans:400italic,600italic,700italic,400,600,700" rel="stylesheet" type="text/css"/> <link rel="canonical" href="https://www.calgary.ca/bylaws/snow-ice.html&quot;/&gt; <!-- External Scripts --> <script src="//code.jquery.com/jquery-3.6.0.min.js" type="text/javascript"></script> <script src="https://code.jquery.com/ui/1.14.1/jquery-ui.min.js&quot;&gt;&lt;/script&gt; <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.min.js&quot;&gt;&lt;/script&gt; <!-- Clientlibs --> <link rel="stylesheet" href="/etc/clientlibs/www/main.min.css" type="text/css"> <script src="/etc/clientlibs/www/main.min.js"></script> <script src="/etc.clientlibs/clientlibs/granite/jquery/granite/csrf.min.js"></script> <!-- Legacy browser detection --> <script>if (window.document.documentMode) $(document).ready(function () { $("body").attr("data-browser", "ie11"); });</script> <script src="//www1.calgary.ca/sdc/WTCalgarycaV3.load.js" type="text/javascript"></script> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id=&#x27;+i+dl+ '&gtm_auth=ieVLX2ymGMaEGA_CRqAzRg&gtm_preview=env-2&gtm_cookies_win=x';f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-5R4PHXL');</script> <!-- End Google Tag Manager --> <script> //prehiding snippet for Adobe Target with asynchronous tags deployment ; (function (win, doc, style, timeout) { var STYLE_ID = 'at-body-style'; function getParent() { return doc.getElementsByTagName('head')[0]; } function addStyle(parent, id, def) { if (!parent) { return; } var style = doc.createElement('style'); style.id = id; style.innerHTML = def; parent.appendChild(style); } function removeStyle(parent, id) { if (!parent) { return; } var style = doc.getElementById(id); if (!style) { return; } parent.removeChild(style); } addStyle(getParent(), STYLE_ID, style); setTimeout(function () { removeStyle(getParent(), STYLE_ID); }, timeout); }(window, document, "body {opacity: 0 !important}", 250)); </script> <script src="//assets.adobedtm.com/launch-EN300d6f3dd9f74d8f85792c2dae95d30e.min.js" async></script> <script type="text/javascript" src="//script.crazyegg.com/pages/scripts/0027/9840.js" async="async"></script> </head> <body class="coc-pl"> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5R4PHXL&quot; height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <div id="surveyType" style="display:none">Information</div> <div class="page-container "> <div class="row no-gutters global-banner-container"> <div class="col-12 "> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> </div> </div> </div> <div class="row no-gutters global-banner-container"> <div class="col-12 "> <link rel="stylesheet" href="/etc.clientlibs/designsystem/components/structure/global-alert/clientlibs.min.css" type="text/css"> <script src="/etc.clientlibs/designsystem/components/structure/global-alert/clientlibs.min.js"></script> </div> </div> <div class="header"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> <div class="site-header aem-GridColumn aem-GridColumn--default--12"> <script type="text/javascript"> var searchModalId = "<?= 1 ?>"; </script> <script> $( document ).ready(function() { COC.Nav.init(); COC.Nav.initSecondaryNav(); }); </script> <header class="cui coc-header with-utility-nav curated-menu single-level-menu calgary-ca-header"> <div class="header-inner"> <!-- Skip links provide screen readers and keyboard users a shortcut to the main content area --> <ul class="skip-links"> <li><a href="#cocis-maincontent" class="skip-link">Skip to main content</a></li> </ul> <!-- Logo --> <a href="/home.html" class="coc-logo"> <img src="/etc/clientlibs/www/main/images/coc-logo-simplify.svg" class="coc-logo-mobile no-print" alt="Return to the Calgary.ca homepage"/> <img src="/etc/clientlibs/www/main/images/coc-logo.svg" class="coc-logo-desktop printarea" alt="Return to the Calgary.ca homepage"/> </a> <!-- <span class="app-title d-none">Official web site of The City of Calgary</span> --> <script> $( document ).ready(function() { }); </script> <div id="searchBoxPlaceholder"></div> <div id="global-search-container" class="cui search-box d-none d-sm-block"> <form action="/search.html" method="get"> <label for="global-search-input" class="sr-only">Search</label> <input id="global-search-input" name="q" class="form-control search-box-input" type="text" placeholder="search calgary.ca"/> <button id="global-search-submit-btn" type="submit" class="cui search-box-btn btn-md icon-only primary"> <span class="cicon-search" aria-hidden="true"></span> <span class="sr-only">Submit search</span> </button> </form> </div> <button id="searchModalButton" class="cui search-box d-block d-sm-none" data-bs-toggle="modal" data-bs-target="#global-search-modal" aria-label="Click to open the search window"> <span class="form-control search-box-input"></span> <span class="cui search-box-btn btn-md icon-only primary"> <span class="cicon-search" aria-hidden="true"></span> <span class="sr-only">Submit search</span> </span> </button> <div id="global-search-modal" class="cui blocker modal" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="false"> <div class="modal-dialog modal-fs-mobile" role="document"> <div class="modal-content"> <div class="modal-header"> <h2 id="modal-search-title-1" class="modal-title">Search</h2> <button type="button" class="btn-modal-close cui btn-md primary-text" data-bs-dismiss="modal">Close</button> </div> <div class="modal-body"> </div> </div> </div> </div> <div id="google_translate_element" class="cui footer-section no-print"></div> <script> function googleTranslateElementInit() { new google.translate.TranslateElement({ pageLanguage: 'en' }, 'google_translate_element'); } </script> <script src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script> <nav id="sub-nav" class="cui utility-nav"> <ul class="nav-menu"> <li class="nav-item"> <a href="/content/www/en/home/311.html">311</a> </li> <li class="nav-item"> <a href="/content/www/en/home/careers.html">Careers</a> </li> <!-- Basic menu item --> <!-- <li class="nav-item"> <a href="" target="" x-cq-linkchecker="skip"></a> </li> --> <!-- <li class="nav-item"> <a href="https://www.calgary.ca/311.html&quot; target="_blank">311</a> </li> <li class="nav-item"> <a href="https://www.calgary.ca/careers.html?redirect=/careers&quot;&gt;Careers&lt;/a&gt; </li> <li class="nav-item"> <a href="https://www.calgary.ca/general/calendar.html&quot;&gt;Events&lt;/a&gt; </li> --> </ul> </nav> <!-- Mega navigation menu button (for mobile) --> <button class="cui nav-mega-btn-open" aria-haspopup="true" aria-expanded="false" aria-label="Open menu" aria-controls="nav-mega"> <span class="cicon-bars" aria-hidden="true"></span> <!--span class="menu-label">Menu</span--> </button> </div> <nav id="related-links" class="cui related-links"> <ul class="nav-menu"> <span class="title">Also explore:</span> <li class="nav-item"> <a href="https://newsroom.calgary.ca/&quot; target="_blank">News</a> </li> <li class="nav-item"> <a href="https://maps.calgary.ca&quot; target="_blank">Maps</a> </li> </ul> </nav> <!-- Mega navigation menu --> <nav id="nav-mega" class="cui nav-mega"> <button type="button" class="cui nav-mega-btn-close" aria-expanded="false" aria-label="Close menu" aria-controls="nav-mega"> Close<span class="cicon-close-thin-large" aria-hidden="true"></span> </button> <!-- Simplified for brevity --> <ul class="nav-menu "> <li class="nav-item menu-header curated-menu"> <span tabindex="0" class="boldFont coc-secondary-9L">Menu</span> </li> <!-- Basic menu item --> <!-- Pograms & Services menu item --> <li class="nav-item has-dropdown"> <a href="#">Programs and services <span class="cicon-angle-down" aria-hidden="true"></span></a> <div id="sub-nav-1" class="sub-nav" role="dialog" aria-hidden="true" aria-label="Menu item programs and services sub navigation"> <button class="cui btn-close-sub-nav-group" aria-label="Close navigation dialog" aria-controls="sub-nav-1"> Close<span class="cicon-close-thin-large" aria-hidden="true"></span> </button> <div class="row nav-group"> <div class="col-lg-12 menu-topic"> <a class="menu-topic-header" href="/services.html">Programs and services</a> <p>Information on all City services</p> </div> </div> <ul class="row nav-group cui catalogue-group"> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/properties.html"> <span class="cicon-home" aria-hidden="true"></span> <span class="group-title-text">Property, housing and neighbourhoods</span> <span class="group-title-desc">Includes water, waste, tax, and programs for your home and local community</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/transportation.html"> <span class="cicon-car" aria-hidden="true"></span> <span class="group-title-text">Transportation</span> <span class="group-title-desc">Moving around our city - by driving, walking, cycling, public transit, and more</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/development.html"> <span class="cicon-hammer-solid" aria-hidden="true"></span> <span class="group-title-text">Development and building</span> <span class="group-title-desc">Managing how we improve our city and share our spaces</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/safety.html"> <span class="cicon-bylaws-public-safety" aria-hidden="true"></span> <span class="group-title-text">Public and personal safety</span> <span class="group-title-desc">Supporting safety with bylaws, programs, alerts and emergency preparation resources</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/for-business.html"> <span class="cicon-cash-register-solid" aria-hidden="true"></span> <span class="group-title-text">For business owners</span> <span class="group-title-desc">Setup, operation, and support for small and large businesses</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/parks-recreation.html"> <span class="cicon-parks-recreation" aria-hidden="true"></span> <span class="group-title-text">Parks and recreation</span> <span class="group-title-desc">Outdoor and indoor spaces to enjoy and play</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/planning.html"> <span class="cicon-map-pen" aria-hidden="true"></span> <span class="group-title-text">City planning</span> <span class="group-title-desc">Growing our city for today and for our future</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/social-services.html"> <span class="cicon-social-services" aria-hidden="true"></span> <span class="group-title-text">Social programs and services</span> <span class="group-title-desc">Services and support for various groups</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/buy-sell.html"> <span class="cicon-sack-dollar-solid" aria-hidden="true"></span> <span class="group-title-text">Buy and sell with The City</span> <span class="group-title-desc">Purchase from or supply goods and services to The City</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/pets.html"> <span class="cicon-paw" aria-hidden="true"></span> <span class="group-title-text">Pets</span> <span class="group-title-desc">Sharing the city with our animal friends</span> </a> </li> <li class="col-lg-3 nav-p-0-mobile"> <a class="group-title" href="/environment.html"> <span class="cicon-leaf" aria-hidden="true"></span> <span class="group-title-text">Climate and environment</span> <span class="group-title-desc">Climate, nature, and the city's urban habitat</span> </a> </li> </ul> </div> </li> <!-- Get involved --> <!-- Our organization--> <!-- Council menu item --> <!-- Business Local Economy menu items --> <!-- Basic menu item --> <!-- Pograms & Services menu item --> <!-- Get involved --> <li class="nav-item has-dropdown"> <a href="#">Get involved<span class="cicon-angle-down" aria-hidden="true"></span></a> <div id="sub-nav-1" class="sub-nav" role="dialog" aria-hidden="true" aria-label="Menu item get involved sub navigation"> <button class="cui btn-close-sub-nav-group" aria-label="Close navigation dialog" aria-controls="sub-nav-1"> Close<span class="cicon-close-thin-large" aria-hidden="true"></span> </button> <div class="row nav-group"> <div class="col-lg-12 menu-topic"> <a class="menu-topic-header" href="/get-involved.html">Get involved</a> <p>Experience and participate in making life better every day in Calgary</p> </div> </div> <ul class="row nav-group cui catalogue-group"> <li class="nav-p-0-mobile col-lg-3"> <a class="group-title" href="/events.html"> <span class="cicon-calendar" aria-hidden="true"></span> <span class="group-title-text">Events</span> <span class="group-title-desc">Join in activities, sessions, and celebrations throughout the year</span> </a> </li> <li class="nav-p-0-mobile col-lg-3"> <a class="group-title" href="/volunteer.html"> <span class="cicon-hand-heart-solid" aria-hidden="true"></span> <span class="group-title-text">Volunteer opportunities</span> <span class="group-title-desc">Help fellow Calgarians experience our city</span> </a> </li> <li class="nav-p-0-mobile col-lg-3"> <a class="group-title" href="/info-requests.html"> <span class="cicon-call-center-person" aria-hidden="true"></span> <span class="group-title-text">Citizen information requests</span> <span class="group-title-desc">How to report issues and concerns and request information from the City</span> </a> </li> <li class="nav-p-0-mobile col-lg-3"> <a class="group-title" href="/accountability.html"> <span class="cicon-balance-scale" aria-hidden="true"></span> <span class="group-title-text">Government accountability programs</span> <span class="group-title-desc">Share your concerns about conduct and integrity of City representatives</span> </a> </li> <li class="nav-p-0-mobile col-lg-3"> <a class="group-title" href="/engagement.html"> <span class="cicon-comments" aria-hidden="true"></span> <span class="group-title-text">Public Engagement and Participation opportunities</span> <span class="group-title-desc">Provide input on initiatives or present your own ideas</span> </a> </li> <li class="nav-p-0-mobile col-lg-3"> <a class="group-title" href="/get-involved/elections.html"> <span class="cicon-times-square" aria-hidden="true"></span> <span class="group-title-text">City elections</span> <span class="group-title-desc">Your vote matters. Learn how you can participate in city elections.</span> </a> </li> <li class="nav-p-0-mobile col-lg-3"> <a class="group-title" href="/awards.html"> <span class="cicon-trophy" aria-hidden="true"></span> <span class="group-title-text">Civic awards and recognition</span> <span class="group-title-desc">Celebrate those contributing to life in our city</span> </a> </li> <li class="nav-p-0-mobile col-lg-3"> <a class="group-title" href="/appeals.html"> <span class="cicon-gavel" aria-hidden="true"></span> <span class="group-title-text">Appeals and appeal boards</span> <span class="group-title-desc">How to make an appeal on decisions made by the City</span> </a> </li> </div> </li> <!-- Our organization--> <!-- Council menu item --> <!-- Business Local Economy menu items --> <!-- Basic menu item --> <!-- Pograms & Services menu item --> <!-- Get involved --> <!-- Our organization--> <!-- Council menu item --> <li class="nav-item has-dropdown"> <a href="#" aria-expanded="false" aria-haspopup="true">City Council<span class="cicon-angle-down" aria-hidden="true"></span></a> <div id="sub-nav-2" class="sub-nav" role="dialog" aria-hidden="true" aria-label="Menu item council sub navigation"> <button class="cui btn-close-sub-nav-group" aria-label="Close navigation dialog" aria-controls="sub-nav-2"> Close<span class="cicon-close-thin-large" aria-hidden="true"></span> </button> <div class="row nav-group"> <div class="col-lg-12 menu-topic"> <a class="menu-topic-header" href="/council/citycouncil.html">City Council</a> <p>Calgary's elected officials and the City's main governing body</p> <div class="row menu-call-to-action-container"> <div class="col-lg-12"> <a class="cui btn-sm utility-btn-solid" href="/council/findyourcouncillor.html">Find your Councillor and ward</a> <a class="cui btn-sm utility-btn-solid" href="/council/dyncrm-councillors-contact.html">Contact your Councillor</a> <a class="cui btn-sm utility-btn-solid" href="/council/council-and-committee-webcasts.html">Watch live Council webcasts</a> </div> </div> </div> </div> <ul class="row nav-group"> <li class="nav-p-0-mobile col-lg-6"> <ul class="cui catalogue-group"> <li> <ul class="group-links mb-0"> <li> <a href="/council/mayor.html" class="bold-font">Office of the Mayor - Jeromy Farkas</a> </li> </ul> </li> <li> <ul class="group-links col-count-2"> <li><a href="/council/ward-1/warddefault.html" class="bold-font">Ward 1 - Kim Tyers</a></li> <li><a href="/council/ward-2/warddefault.html" class="bold-font">Ward 2 - Jennifer Wyness</a></li> <li><a href="/council/ward-3/warddefault.html" class="bold-font">Ward 3 - Andrew Yule</a></li> <li><a href="/council/ward-4/warddefault.html" class="bold-font">Ward 4 - DJ Kelly</a></li> <li><a href="/council/ward-5/warddefault.html" class="bold-font">Ward 5 - Raj Dhaliwal</a></li> <li><a href="/council/ward-6/warddefault.html" class="bold-font">Ward 6 - John Pantazopoulos</a></li> <li><a href="/council/ward-7/warddefault.html" class="bold-font">Ward 7 - Myke Atkinson</a></li> <li><a href="/council/ward-8/warddefault.html" class="bold-font">Ward 8 - Nathaniel Schmidt</a></li> <li><a href="/council/ward-9/warddefault.html" class="bold-font">Ward 9 - Harrison Clark</a></li> <li><a href="/council/ward-10/warddefault.html" class="bold-font">Ward 10 - Andre Chabot</a></li> <li><a href="/council/ward-11/warddefault.html" class="bold-font">Ward 11 - Rob Ward</a></li> <li><a href="/council/ward-12/warddefault.html" class="bold-font">Ward 12 - Mike Jamieson</a></li> <li><a href="/council/ward-13/warddefault.html" class="bold-font">Ward 13 - Dan McLean</a></li> <li><a href="/council/ward-14/warddefault.html" class="bold-font">Ward 14 - Landon Johnston</a></li> </ul> </li> </ul> </li> <li class="nav-p-0-mobile col-lg-6 border-left"> <ul class="cui catalogue-group"> <li> <ul class="group-links"> <li> <a href="/council/meetings/legislative-services.html">Council meetings</a> </li> <li> <a href="/council/city-council-accountability.html">Accountability</a> </li> <li> <a href="/council/about-calgary-city-council.html">About Council</a> </li> <li> <a href="/council/councillors-and-wards.html">General ward information</a> </li> </ul> </li> </ul> </li> </ul> </div> </li> <!-- Business Local Economy menu items --> <!-- Basic menu item --> <!-- Pograms & Services menu item --> <!-- Get involved --> <!-- Our organization--> <li class="nav-item has-dropdown"> <a href="#">Our organization<span class="cicon-angle-down" aria-hidden="true"></span></a> <div id="sub-nav-1" class="sub-nav" role="dialog" aria-hidden="true" aria-label=" Menu item our organization sub navigation"> <button class="cui btn-close-sub-nav-group" aria-label="Close navigation dialog" aria-controls="sub-nav-1"> Close<span class="cicon-close-thin-large" aria-hidden="true"></span> </button> <div class="row nav-group"> <div class="col-lg-12 menu-topic"> <a class="menu-topic-header" href="/about-us.html">Our organization</a> <p>Calgary's administration and staff</p> </div> </div> <ul class="row nav-group cui catalogue-group"> <li class="nav-p-0-mobile col-lg-4"> <a class="group-title" href="/our-finances.html"> <span class="cicon-chart-mixed-solid" aria-hidden="true"></span> <span class="group-title-text">Budget and finances</span> <span class="group-title-desc">How we budget to deliver programs and services that support Calgarians</span> </a> </li> <li class="nav-p-0-mobile col-lg-4"> <a class="group-title" href="/our-leadership.html"> <span class="cicon-people-group-solid" aria-hidden="true"></span> <span class="group-title-text">Our leadership</span> <span class="group-title-desc">The senior administration of City staff</span> </a> </li> <li class="nav-p-0-mobile col-lg-4"> <a class="group-title" href="/major-projects.html"> <span class="cicon-helmet-safety-solid" aria-hidden="true"></span> <span class="group-title-text">Major projects and initiatives</span> <span class="group-title-desc">Ongoing City-directed efforts with large impacts for our city</span> </a> </li> <li class="nav-p-0-mobile col-lg-4"> <a class="group-title" href="/our-strategy/overview.html"> <span class="cicon-arrows-turn-to-dots-solid" aria-hidden="true"></span> <span class="group-title-text">Our strategy</span> <span class="group-title-desc">How we are aligned to deliver on Council's direction</span> </a> </li> <li class="nav-p-0-mobile col-lg-4"> <a class="group-title" href="/our-services.html"> <span class="cicon-sitemap" aria-hidden="true"></span> <span class="group-title-text">About City of Calgary services</span> <span class="group-title-desc">How we work and how we are structured as an organization</span> </a> </li> </ul> </div> </li> <!-- Council menu item --> <!-- Business Local Economy menu items --> </ul> <!-- utility links and related links display on mobile --> <nav id="sub-nav" class="cui utility-nav mobile"> <ul class="nav-menu"> <li class="nav-item"> <a href="/content/www/en/home/311.html">311</a> </li> <li class="nav-item"> <a href="/content/www/en/home/careers.html">Careers</a> </li> <!-- Basic menu item --> <!-- <li class="nav-item"> <a href="" target="" x-cq-linkchecker="skip"></a> </li> --> <!-- <li class="nav-item"> <a href="https://www.calgary.ca/311.html&quot; target="_blank">311</a> </li> <li class="nav-item"> <a href="https://www.calgary.ca/careers.html?redirect=/careers&quot;&gt;Careers&lt;/a&gt; </li> <li class="nav-item"> <a href="https://www.calgary.ca/general/calendar.html&quot;&gt;Events&lt;/a&gt; </li> --> </ul> </nav> <nav id="related-links" class="cui related-links mobile"> <ul class="nav-menu"> <span class="title">Also explore:</span> <li class="nav-item"> <a href="https://newsroom.calgary.ca/&quot; target="_blank">News</a> </li> <li class="nav-item"> <a href="https://maps.calgary.ca&quot; target="_blank">Maps</a> </li> </ul> </nav> </nav> </header> </div> </div> </div> <div class="row no-gutters global-inline-banner-container"> <div class="col-12 "> </div> </div> <div class="container-fluid pl-0 pr-0 coc-content-wrapper"> <div class="root responsivegrid"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> <div class="global-inline-notification aem-GridColumn aem-GridColumn--default--12"> <div class="global-inline-banner-container"> </div></div> <div class="subsite-analytics aem-GridColumn aem-GridColumn--default--12"> <div class="global-inline-package-container"> <script> ////////////////////////////////////// // Global Mega Nav Clicks Top Level // ////////////////////////////////////// $(document).ready(function() { $('#nav-mega > ul > li > a').click(function(e) { var gaCategory = "Global Mega Nav Clicks Top Level"; var ClickfromPage = window.location.href; var eventAction = $(this).text().trim(); ///////Find Menu Items With Sub Menu////////////// ///////Capeture Click on Closed Items Only//////// if ($(e.target).parent().hasClass('nav-item has-dropdown') ) { if ( $(e.target).parent().hasClass('open')) { ga('send', 'event', gaCategory, eventAction , ClickfromPage ); } } ////////Find Menu Items With no Sub Menu////////////// else { ga('send', 'event', gaCategory, eventAction , ClickfromPage ); COC.Analytics.DelayClickthrough(this); } }); }); </script> <div id="actionName" data-action-name="snow-ice"/></div> <div data-site-id="6LfUR-AUAAAAAMqhmlsjqZMmbg21a-mJZheYciac" id="siteID"></div> <style> .grecaptcha-badge { width: 70px !important; overflow: hidden !important; transition: all 0.3s ease !important; left: 4px !important; } .grecaptcha-badge:hover { width: 256px !important; } </style> <script> function onRecaptchaLoadCallback() { console.log('recaptcha is ready'); // not showing grecaptcha.ready(function() { var siteID = $('#siteID').data('site-id'); var preactionName = $('#actionName').data('action-name'); var actionName = preactionName.replace(/-/g, '_'); grecaptcha.execute(siteID, {action: actionName}).then(function(token) { var actionName = $('#actionName').data('action-name'); console.log('recaptchav3 executed on: '+ actionName+'.html' ); }); }); } </script> <script defer async src="https://www.google.com/recaptcha/api.js?render=6LfUR-AUAAAAAMqhmlsjqZMmbg21a-mJZheYciac&amp;onload=onRecaptchaLoadCallback&quot;&gt;&lt;/script&gt; </div> </div> <div class="wordmarkpar generic page basicpage aem-GridColumn aem-GridColumn--default--12"><div class="row wordmark-container"> <div class="col-12"> </div> </div> </div> <div class="breadcrumbpar aem-GridColumn aem-GridColumn--default--12"> <div id="topic-breadcrumb-container" class="topic-breadcrumb-container cui d-none d-lg-flex "> <div class="placeholder" aria-hidden="true"></div> <div class="topic-breadcrumb-content"> <div class="wrap"> <nav aria-label="Parent topic:"> <ol class="cui breadcrumb breadcrumb-topic"> <li><a href="/services.html"><span class="cicon-angle-left" aria-hidden="true"></span><span class="text">Programs and services</span></a></li> <li><a href="/safety.html"><span class="cicon-angle-left" aria-hidden="true"></span><span class="text">Public and personal safety</span></a></li> <li><a href="/bylaws/topics.html"><span class="cicon-angle-left" aria-hidden="true"></span><span class="text">Bylaws by topic</span></a></li> </ol> </nav> </div> </div> </div> <script> $(document).ready(function(){ if ( $(".wordmark-content-container").length ) { $(".topic-breadcrumb-container").addClass ( "mt-0" ); } else { $(".topic-breadcrumb-container").removeClass ( "mt-0" ); } }); </script></div> <div class="breadcrumb-nav aem-GridColumn aem-GridColumn--default--12"> <style> .cui.breadcrumb.breadcrumb-nav li::before { font-family:"cicon" !important; speak:none; font-style:normal; font-weight:normal; font-variant:normal; text-transform:none; line-height:1; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; color:#6f7277; display:inline-block; font-size:.5625rem; content:"\e159"; padding:0 .375rem } </style></div> <div class="maincontentpar aem-GridColumn aem-GridColumn--default--12"> <div class="row no-gutters coc-content "> <div class="col-12 col-lg-3 secondary-nav-container"> <nav id="nav-secondary" class="cui nav-secondary localNav" style="display: block;"> <button class="nav-btn-mobile expandBtn" type="button" aria-controls="nav-secondary" aria-haspopup="true" aria-label="Open the secondary navigation menu">Menu</button> <button class="nav-btn-mobile collapseBtn active" type="button" aria-controls="nav-secondary" aria-label="Close the secondary navigation menu" style="display:none;">Menu</button> <ul class="nav-menu"> <li class="first"> <a href="/bylaws/snow-ice.html">Snow and ice</a> </li> <li><a href="/bylaws/snow-shovelling.html">Snow shovelling</a></li> </ul> </nav> </div> <div class="col-12 col-lg-9 main-content-container" id="cocis-maincontent"> <div class="container-fluid pr-0 pl-0"> <div class="container"> <div class="row no-gutters mx-auto"> <div class="col-12"> <div id="topic-breadcrumb-container" class="topic-breadcrumb-container cui d-flex d-lg-none "> <div class="placeholder" aria-hidden="true"></div> <div class="topic-breadcrumb-content pl-0"><!--remove the pl-0 class when use the new topic based template--> <div class="wrap"> <nav aria-label="Parent topic:"> <ol class="cui breadcrumb breadcrumb-topic"> <li><a href="/services.html"><span class="cicon-angle-left" aria-hidden="true"></span><span class="text">Programs and services</span></a></li> <li><a href="/safety.html"><span class="cicon-angle-left" aria-hidden="true"></span><span class="text">Public and personal safety</span></a></li> <li><a href="/bylaws/topics.html"><span class="cicon-angle-left" aria-hidden="true"></span><span class="text">Bylaws by topic</span></a></li> </ol> </nav> </div> </div> </div> <h1 class="coc-content-page-title ">Bylaws related to snow and ice</h1> </div> </div> </div> <div class="row no-gutters"> <div class="col-12 mx-auto"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> <div class="grid-layout aem-GridColumn aem-GridColumn--default--12"> <div class="container "> <div class="row"> <div class="col-12 col-md-12"> <div class="text parbase"> <p>Calgary winters are safer and more manageable when everyone pitches in to clear snow and ice. While The City does its part clearing roads, designated pathways, sidewalks and other high-use public areas, section 67 of the Street Bylaw requires Calgary property owners to:</p> <ul> <li>Remove snow and ice – down to the bare surface – from public sidewalks bordering their private property within 24-hours of a snowfall ending. <li>Remove a minimum width of 1.5 meters of snow and ice – down to the bare surface – from a public pathway bordering their property, also within 24-hours of a snowfall ending. Applicable pathways run parallel and adjacent to a street, with or without separation between the pathway and street (e.g. a grass boulevard). <li>Pile snow from their private driveway or walkway on their property (e.g. front lawn). Snow from a public sidewalk or pathway may be shoveled onto another public property, such as a road. </ul> <p>See below for further details and penalty information. Or download the <a href="https://publicaccess.calgary.ca/lldm01/livelink.exe?func=ccpa.general&amp;msgID=CyAcqyqyKI&amp;msgAction=Download&quot; target="_blank" title="Street Bylaw">Street Bylaw</a> (Section 67) for the full set of regulations for snow and ice control</p> </div> <div class="heading"> <div class="subtitle-block cui red-underline "> <h2> Noise exemption </h2> <hr aria-hidden="true"/> </div> </div> <div class="text parbase"> <p>There is a night-time snow clearing relaxation that allows the operation of an engine-powered snow clearing devices for commercial and non-commercial removal of snow and ice from streets, parking lots and sidewalks.</p> <p>Bylaw exemption details:</p> <ul> <li>The relaxation begins with the start of the snowfall (or rain/freezing rain) and ends 48 hours after it has stopped. This means anyone is allowed to operate a motorized snow clearing device (including leaf and snow blowers) during this time. <li>The purpose of this relaxation is to ensure walkways, parking lots, and streets are cleared to reduce likelihood of accidents and/or injury and to improve accessibility. <li>Use of this equipment is always allowed during the day. Outside of the relaxation, night use of snow clearing equipment is not permitted. </ul> <p>For more information, download the <a href="https://publicaccess.calgary.ca/lldm01/exccpa?func=ccpa.general&amp;msgID=QTKKyTrcrrA&amp;msgAction=Download&quot; title="Calgary Community Standards Bylaw" target="_blank">Community Standards Bylaw​</a> (Sections 31.1(e) and 31.1(2)).</p> </div> <div class="heading"> <div class="subtitle-block cui red-underline long-line"> <h2> Penalties for not removing snow </h2> <hr aria-hidden="true"/> </div> </div> <div class="text parbase"> <p>Property owners/occupants who do not comply with the bylaw and subsequent notices issued by The City may be subject to:</p> <ul> <li>An invoice to the property owner from The City for clearing the sidewalk on their behalf. The cost is a minimum flat rate of $150 plus GST and an administration fee. The amount will be added to the owner's annual property tax if not paid by the invoice due date. <li>A fine of $250 to the property occupant for a first offence. Repeat offenders may be fined $500 for a second offence and $750 for a third offence, and each offence after that within 12 months. Tickets issued to repeat offenders may require a court appearance. The Alberta Registry Service will collect unpaid fines at the time of license or registration renewal. </ul> </div> <div class="heading"> <div class="subtitle-block cui red-underline long-line"> <h2> Frequently asked questions </h2> <hr aria-hidden="true"/> </div> </div> <div class="accordion"> <!-- Add analytics if activated --> <script> var COC = COC || {}; COC.AccordionAnalytics = (function ($) { $(document).ready(function () { console.log("--- Accordion analytics ready"); $(".accordion.acc-wrap") .find(".title-bar") .find("button") .click(function () { console.log("--- Accordion click"); var expanded = $(this).attr("aria-expanded") === "false" ? true : false; if (expanded === false) { // region is collapsed var title = $(this) .text() .replace(/[^a-zA-Z 0-9]+/g, ""); CollectWTAccordion(expanded, title); } }); }); function CollectWTAccordion(expanded, title) { if (expanded === false) { // panel was previously hidden, now expanded COC.Analytics.wt({ dcCreator: COC.Analytics.GetMetaDCCreatorContent(), dcTitle: COC.Analytics.GetMetaDCTitleContent(), name: "Accordion-Button", comment: title, accordionId: accordionIdentifier, }); } } })(jQuery); </script> <!--Heading options--> <!--heading option end--> <div class="cui accordion acc-wrap mb-0"> <h3 id="whereamiallowedtoputthesnowi&#39;veshovelled?" class="title-bar">Where am I allowed to put the snow I&#39;ve shovelled?</h3> <div> <div class="text parbase"> <div class="ExternalClass6F984EDB136D44799583D6527C194BC6"><p>The bylaw states:</p> <ul> <li>You may shovel snow from a public space (e.g. sidewalk) onto another public space (e.g. road). <li>You may not shovel snow from your private property (e.g. driveway) onto a public space (e.g. road). </ul> <p>In the spirit of being a good neighbour, please do not pile shovelled snow:</p> <ul> <li>On a road to the extent that it blocks access <li>Into a crosswalk <li>On top of a storm drain <li>Into a neighbour's yard </ul> </div> </div> </div> <h3 id="whatarepropertyownersresponsiblefor?" class="title-bar">What are property owners responsible for? </h3> <div> <div class="text parbase"> <div class="ExternalClassE9B51FC3232F4D1DA77A675F6B3CE366"><p><b>Property owners</b> are responsible for:</p> <p><b>Snow and ice clearing</b></p> <ul> <li>Clearing snow and ice from a sidewalk that borders your property, down to a bare surface, within 24-hours of a snowfall ending. <li>Clearing a minimum width of 1.5 meters of snow and ice from a pathway that borders your property, also down to a bare surface and within 24-hours of a snowfall ending. <li>If you own a rental property but reside elsewhere, you're still responsible for ensuring adjacent sidewalks and pathways are cleared, regardless of who does the work. <li>If a windrow limits your access to a sidewalk, private driveway, or on-street parking, you may choose to clear them at your convenience. The City does not clear windrows. Our crews make every effort to minimize their size. </ul> <p><b>Snow removal Notices</b></p> <ul> <li>The property owner is responsible for acting on a City Notice to clear the snow and ice by the time ordered on the notice. <li>If not acted on, The City will clear the sidewalk and invoice the property owner for a minimum of $150 plus GST and administration fees. If not paid, the invoice amount will be added to the property owner's property tax bill. </ul> <p><b>Fines</b></p> <p>The property occupant may receive a fine for failing to clear the sidewalk within the required time. The occupant is responsible for paying the fine by the due date noted or attending Court to defend it. Unpaid fines are payable to Alberta Registry services when renewing a driver's license or vehicle registration.</p> </div> </div> </div> <h3 id="whatisthecityresponsiblefor?" class="title-bar">What is The City responsible for?</h3> <div> <div class="text parbase"> <div class="ExternalClassE9B51FC3232F4D1DA77A675F6B3CE366"><p><b>The City</b> is responsible for performing winter maintenance on:</p> <ul> <li>Priority roads, applying anti-icing and/or traction material as needed <li>Sidewalks bordering City properties, down to bare surface within 24-hours of snowfall ending <li>600 kilometres of pathway <li>Reducing windrows at 500 crosswalks and wheelchair curb ramps, within 72 hours of a snowfall ending <li>Transit properties, including bus pads <li>Pedestrian overpasses and bridges <li>Level out ruts on residential roads </ul> <p>The City <b>does not</b>:</p> <ul> <li>Plow snow to bare pavement on residential roads <li>Remove snow from residential areas <li>Clear back lanes or alleyways <li>Clear sidewalks bordering private homes or businesses; the property owner/occupant is responsible <li>Clear sidewalks bordering public or private schools; the school is responsible <li>Clear windrows (see below) <li>Clear engineered walkways between homes <li>Typically The City does not remove or clear snow from permitted accessible on-street parking spaces. The City will respond to accessibility issues at these spaces, if required. <li>Clear community post office boxes; Canada Post is responsible </ul> <p><b>Fines</b></p> <p>The property occupant may receive a fine for failing to clear the sidewalk within the required time. The occupant is responsible for paying the fine by the due date noted or attending Court to defend it. Unpaid fines are payable to Alberta Registry services when renewing a driver's license or vehicle registration.</p> </div> </div> </div> <h3 id="whoclearswindrowscreatedbyacityplow?" class="title-bar">Who clears windrows created by a City plow?</h3> <div> <div class="text parbase"> <div class="ExternalClass04E56B223B4F4FCCAEC2CA2EE42D5833"><p>The City does not clear windrows. Property owners are not required to clear them but may choose to for easier access to a driveway or on-street parking space. Our crews make every effort to minimize their size.</p> </div> </div> </div> <h3 id="howdoifileacomplaintandwhathappenstoit?" class="title-bar">How do I file a complaint and what happens to it?</h3> <div> <div class="text parbase"> <div class="ExternalClassC2632E6F2E704586927FC4683219E5FE"><p>If you know of a bylaw infraction and would like to report it, please call 311 or <a href="https://calgary-cwiprod.motorolasolutions.com&quot; title="file a report online" target="_blank">file a report online</a>.</p> <p><span style="">To help us respond faster, please be ready with the following information:</span></p> <ul> <li>Your name, address and phone number <li>The address of the property related to the complaint <li>A brief and concise description of the complaint </ul> <p>The information you share will remain confidential. No anonymous complaints will be accepted - you must identify yourself.</p> <p>Complaints made to 311 are assigned a file number and forwarded to a peace officer for investigation. Due to the high volume of complaints registered and limited City resources, it can take several days before an initial visit occurs. Complaints are handled on a priority basis. Priority is given to complaints with serious public safety implications.</p> <p>For recurring complaints with the same property, please include the relevant dates to help bylaw officers with the investigation. <a href="/bylaws/complaints.html" title="Learn more about recurring bylaw complaints" style="background-color: rgb(255,255,255);">Learn more about recurring bylaw complaints</a><span style="">.​</span><br> </p> </div> </div> </div> </div> <!-- <style type="text/css"> #statusmsg {width:1 !important; height:1 !important; white-space: nowrap; text-indent: -9999px; opacity:0;} </style> --> </div> <div class="heading"> <div class="subtitle-block cui red-underline long-line"> <h2> Filing a complaint </h2> <hr aria-hidden="true"/> </div> </div> <div class="text parbase"> <p>If you know of a snow and ice bylaw infraction and would like to report it, please call 311 (from within Calgary) or 403-268-CITY (2489) (from outside Calgary), use the <a href="/311/mobile-app.html" title="311 apps">311 app</a> or online below.</p> </div> <div class="button"> <!--Primary,utility,text buttons html--> <!--icon on the right side--> <a href="https://calgary-cwiprod.motorolasolutions.com/cwi/direct/BYSNICSI&quot; class="cui btn-md primary mb-responsive" target="_blank"> <span class="btn-wrapper"> <span class="btn-text"> File a snow and ice complaint </span> <span class="cicon-angle-right right" aria-hidden="true"></span> </span> </a> </div> <div class="text parbase"> <p>To help us respond faster, please be ready with the following information:</p> <ul> <li>Your name and address. <li>A primary and alternate phone number. <li>The address and exact location of the property for which you wish to register a complaint. <li>A brief and concise description of the complaint. <li><b>Note: </b>24-hours must have elapsed since the last snow fall within the City of Calgary before you can submit a complaint. </ul> <p>This information will remain confidential. No anonymous complaints will be accepted - you must identify yourself with the 311 service representative. To report other snow/ice issues, please visit our <a href="/info-requests/report-snow-ice-concerns.html" title="Snow and ice concerns page">Snow and ice concerns page</a>.</p> <p><b><a href="/bylaws/complaints.html">Learn more about filing a bylaw complaint and the process.</a></b></p> </div> <div class="heading"> <div class="subtitle-block cui red-underline long-line"> <h2> Related topics </h2> <hr aria-hidden="true"/> </div> </div> <div class="card-set"> <script src="/etc.clientlibs/www/components/content/card-set-scrolling/clientlibs.min.js"></script> <script src="/etc.clientlibs/www/components/content/card-set/clientlibs.min.js"></script> <!-- Add analytics if activated --> <script> var COC = COC || {}; COC.CardSetAnalytics = (function($) { $(document).ready(function(){ // Basic $('.card-set').find('.card-inherit-row-size').find('a').click(function(){ console.log("--- Card basic click"); var title = $(this).find('.card-title').text().replace(/[^a-zA-Z 0-9]+/g, ''); CollectWTCard("Card-Button", title); }); // Video $('.card-set').find('.card-inherit-row-size').find('.btn-video').click(function(){ console.log("--- Card video click"); var title = $(this).closest('.cui.card').find('.card-body').find('.card-title').text().replace(/[^a-zA-Z 0-9]+/g, ''); CollectWTCard("Card-Video", title); }); }); function CollectWTCard(name, strBtnTitle) { COC.Analytics.wt({ dcCreator: COC.Analytics.GetMetaDCCreatorContent(), dcTitle: COC.Analytics.GetMetaDCTitleContent(), name: name, comment: strBtnTitle }); } })(jQuery); </script> <div id="content-card_set_copy_copy_c" class="cui card-sets disabled-mobile-view mb-0"> <!--Heading options--> <!--heading option end--> <!-- Filtering --> <div class="row"> <div class="col-12"> </div> </div> <!-- Cards Body--> <ul class="row row-equal-height-cards card-row-size-4 "> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="/bylaws/snow-shovelling.html">Snow shovelling</a> </h3> </div> <div> <p>General information on snow and ice control.</p> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="/info-requests/report-snow-ice-concerns.html">Reporting snow and ice concerns</a> </h3> </div> <div> <p>Report bylaw infractions, public safety hazards and other snow-related concerns.</p> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="/bike-walk-roll/bikeways-snow-clearing.html">Clearing sidewalks next to bikeways</a> </h3> </div> <div> <p>Where to put shoveled snow from a sidewalk that borders a cycle track.</p> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="/bike-walk-roll/pathway-snow-clearing.html">Pathway snow clearing</a> </h3> </div> <div> <p>The City clears up to 500 km of pathway, including sidewalks within and bordering City properties.</p> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="/volunteer/snow-angels.html">Help with snow clearing</a> </h3> </div> <div> <p>Anyone able is encouraged to be a Snow Angel for a neighbour who&#39;s away or has difficulty shoveling.</p> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="/roads/maintenance/free-sand-salt.html">Free salt and sand</a> </h3> </div> <div> <p>Free sand-salt is available for individual use on sidewalks. Find a location near you.</p> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="https://publicaccess.calgary.ca/lldm01/livelink.exe?func=ccpa.general&amp;msgID=CyAcqyqyKI&amp;msgAction=Download&quot;&gt;Street Bylaw (section 67)</a> </h3> </div> <div> <p>Snow and ice removal is governed under section 67 of the Street Bylaw.</p> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> </ul> <!-- Pagination --> </div> <style> .card-set.cq-Editable-dom .newpar { width:94%; margin:0 auto; } .card-set.cq-Editable-dom .row-masonry .newpar { position:absolute; bottom:-55px; left:3%; margin:0; } .aem-AuthorLayer-Edit .card-set { padding-bottom:65px !important; position:relative; } </style> </div> <div class="experiencefragment"> <div class="xf-content-height"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> <div class="responsivegrid aem-GridColumn aem-GridColumn--default--12"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> <div class="heading aem-GridColumn aem-GridColumn--default--12"> <div class="subtitle-block cui red-underline long-line"> <h2> You may be interested in </h2> <hr aria-hidden="true"/> </div> </div> <div class="card-set aem-GridColumn aem-GridColumn--default--12"> <!-- Add analytics if activated --> <script> var COC = COC || {}; COC.CardSetAnalytics = (function($) { $(document).ready(function(){ // Basic $('.card-set').find('.card-inherit-row-size').find('a').click(function(){ console.log("--- Card basic click"); var title = $(this).find('.card-title').text().replace(/[^a-zA-Z 0-9]+/g, ''); CollectWTCard("Card-Button", title); }); // Video $('.card-set').find('.card-inherit-row-size').find('.btn-video').click(function(){ console.log("--- Card video click"); var title = $(this).closest('.cui.card').find('.card-body').find('.card-title').text().replace(/[^a-zA-Z 0-9]+/g, ''); CollectWTCard("Card-Video", title); }); }); function CollectWTCard(name, strBtnTitle) { COC.Analytics.wt({ dcCreator: COC.Analytics.GetMetaDCCreatorContent(), dcTitle: COC.Analytics.GetMetaDCTitleContent(), name: name, comment: strBtnTitle }); } })(jQuery); </script> <div id="content-card_set_copy_copy" class="cui card-sets disabled-mobile-view mb-responsive"> <!--Heading options--> <!--heading option end--> <!-- Filtering --> <div class="row"> <div class="col-12"> </div> </div> <!-- Cards Body--> <ul class="row row-equal-height-cards card-row-size-3 "> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="/bylaws/topics.html">Bylaws by topic</a> </h3> </div> <div> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="/bylaws/complaints.html">Filing a complaint</a> </h3> </div> <div> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> <li class='card-inherit-row-size'> <!-- Card Template --> <div class="pre-wrap"> <div class="cui card without-media block-link card-kicker-"> <div class="card-body"> <div class="card-header-wrapper"> <h3 class="card-title"> <a href="/bylaws/city-bylaw-library.html">City bylaw library</a> </h3> </div> <div> </div> </div> </div> <!-- Mini card v1 --> <!-- Mini card v2 --> </div> </li> </ul> <!-- Pagination --> </div> <style> .card-set.cq-Editable-dom .newpar { width:94%; margin:0 auto; } .card-set.cq-Editable-dom .row-masonry .newpar { position:absolute; bottom:-55px; left:3%; margin:0; } .aem-AuthorLayer-Edit .card-set { padding-bottom:65px !important; position:relative; } </style> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div> </div></div> <div class="bottomcontentpar aem-GridColumn aem-GridColumn--default--12"><div class="container-fluid pr-0 pl-0"> <div class="row"> <div class="col-12"> <div class="aem-Grid aem-Grid--12 aem-Grid--default--12 "> </div> </div> </div> </div></div> <div class="disclaimerpar generic page basicpage aem-GridColumn aem-GridColumn--default--12"><div class="disclaimer-container coc-secondary-10L"> </div> </div> <div class="vocpar generic page basicpage aem-GridColumn aem-GridColumn--default--12"><div class="disclaimer-container coc-secondary-10L"> <script src="/etc.clientlibs/www/components/structure/voc-test/clientlibs.min.js"></script> <script src="/etc.clientlibs/www/components/structure/voc/clientlibs.min.js"></script> <style> .modal-backdrop.in { display: none; } </style> <button class="cui btn-sm utility-btn-solid pagefeedback" data-bs-toggle="modal" data-bs-target="#pagefeedback" id="pagefeedback-btn"> Page feedback <span class="cicon-angle-double-up right" aria-hidden="true"></span> </button> <div data-buttons-style='hide-buttons' id="data-buttons-style"> </div> <style> .vocpar .btn-sm.cui.stackedpagefeedback { display: inline-block; position: fixed; right: 0; //width: 12rem; width: fit-content !important; transform: rotate(270deg) !important; -webkit-transform: rotate(270deg) !important; -ms-transform: rotate(270deg) !important; transform-origin: right bottom; -webkit-transform-origin: right bottom; -ms-transform-origin: right bottom; top: 50% !important; height: 2rem; z-index: 10001; font-size: 0.9rem !important; } .vocpar .websitemodal-footer{ position: absolute; left: 0; width: 100%; bottom: 0; margin-left: 0 !important; margin-right: 0 !important; } .vocpar .pagemodal-footer{ position: absolute; } @media (min-width: 768px) { body.modal-websitefeedback-open #websitefeedback .modal-dialog.modal-dialog-voc { display: flex !important; align-items: center; height: 100vh; } body.modal-pagefeedback-open #pagefeedback .modal-dialog.modal-dialog-voc .modal-content { top: 50%; } } @media (min-width: 992px) { body.modal-pagefeedback-open #pagefeedback .modal-dialog.modal-dialog-voc .modal-content { top: 60%; } } @media (min-width: 1050px) { .vocpar .btn-sm.cui.stackedpagefeedback { top: 50% !important; height: 2rem !important; } } body.modal-pagefeedback-openstacked .side-btnstacked.pageclose-btn { z-index: 5000 !important; } </style> <div id="pagefeedback" class="cui modal information delay 90" tabindex="-1" role="dialog" aria-labelledby="unique-pagefeedback" aria-hidden="true" style="z-index:21474836391111!important"> <div class="modal-dialog modal-dialog-voc modal-fs-mobile " role="document"> <button type="button" class="btn-modal-close cui btn-sm primary-text pageclose-btn side-btn" data-bs-dismiss="modal">Page feedback<span class="cicon-angle-double-up right" aria-hidden="true"></span></button> <div class="modal-content voc-modal-content" id="voc-blanck-pagelevel"> <div class="modal-header"> <h2 id="unique-pagefeedback" class="modal-title">Tell us how we&#39;re doing</h2> <button type="button" class="btn-modal-close cui btn-md primary-text pageclose-btn" data-bs-dismiss="modal">Close</button> </div> <div class="modal-body" id="pagereceiver"> <p class="mb-0">By beginning this survey you accept our <a href="https://www.calgary.ca/general/privacy-policy.html&quot; target="_blank">privacy policy</a></p> <hr aria-hidden="true"/> <form method="POST" action="#" id="pagefeedback" onsubmit="event.preventDefault();" name="pagefeedback" enctype="multipart/form-data" target="pagereceiver" data-pl-frm-vld="true" data-pl-frm-ctrl="true"> <input type="hidden" name=":formstart" value=""/><input type="hidden" name="_charset_" value="utf-8"/> <input type="hidden" id="validateredirect" name=":redirect" value="/content/platform.html"/> <!-- <sly data-sly-test="false"> <fieldset class="form-group bordered"> <legend>What Main Area of Calgary.ca were you looking for?</legend> <select class="cmp-form-options__field cmp-form-options__field--drop-down service" name="q1a" id="form-options-q1a" aria-invalid="false" required> <option value="">Select Your Area</option> <option value="Recreation">Recreation</option> <option value="Planning and Development">Planning and Development</option> <option value="City Council">City Council</option> <option value="City Council">DCMO</option> </select> </fieldset> </sly>--> <fieldset class="form-group form-option-radio-block"> <legend>Did you find the information you were looking for?<!--span class="label-required ">(required)</span--></legend> <label class="form-check-radio-label" for="q1"><input id="q1" name="q1" type="radio" value="easily"/>Yes, easily</label> <label class="form-check-radio-label" for="ex-radio-2"><input id="ex-radio-2" name="q1" type="radio" value="eventually"/>Yes, eventually</label> <label class="form-check-radio-label" for="ex-radio-3"><input id="ex-radio-3" name="q1" type="radio" value="no"/>No</label> </fieldset> <fieldset class="form-group " id="pageFeedback-group"> <legend>What would make this page more useful? (<span id="page_current_comment">0</span><span id="page_maximum_comment">/255</span>)</legend> <textarea id="pageFeedback-useful" name="pageFeedback-useful" class="form-control" rows="3" placeholder="Max: 255 Characters" maxlength="255"></textarea> </fieldset> <fieldset class="form-group mb-responsive"> <legend>How satisfied are you with this page? <!--span class="label-required ">(required)</span--></legend> <p class="form-text mb-xs" id="help-text-10">(1 is very dissatisfied and 5 is very satisfied)</p> <span class="number-cb-group"> <label for="rating-1"><input type="radio" aria-describedby="help-text-10" id="rating-1" name="rating" value="1"/><span class="label-text">1</span></label> <label for="rating-2"><input type="radio" aria-describedby="help-text-10" id="rating-2" name="rating" value="2"/><span class="label-text">2</span></label> <label for="rating-3"><input type="radio" aria-describedby="help-text-10" id="rating-3" name="rating" value="3"/><span class="label-text">3</span></label> <label for="rating-4"><input type="radio" aria-describedby="help-text-10" id="rating-4" name="rating" value="4"/><span class="label-text">4</span></label> <label for="rating"><input type="radio" aria-describedby="help-text-10" id="rating" name="rating" value="5"/><span class="label-text">5</span></label> </span> <div class='rating page-error'></div> </fieldset> <!-- <button class="cui btn-md primary" type="submit" id="pagefeedback-modelbtn"> <span class="btn-wrapper"><span class="btn-text">Send</span><span class="cicon-angle-right right" aria-hidden="true"></span> </span> </button> --> <div class="form-footer pagemodal-footer"> <button class="cui btn-md primary" type="submit" id="pagefeedback-modelbtn"> <span class="btn-wrapper"><span class="btn-text">Send feedback</span><span class="cicon-angle-right right" aria-hidden="true"></span> </span> </button> </div> </form> </div> </div> </div> </div> <script> COC.Components.voc.init(); if ($("#btnOpenAssessmentChatbot,#chat-widget-container").length) { var buttonsStyle = $("#data-buttons-style").data("buttons-style"); if (buttonsStyle == "stack-buttons") { $('#pagefeedback-btn').attr('style', 'top: 22%!important;width:11rem; font-size:0.9rem!important; height: 2rem!important;'); $('#websitefeedback-btn').removeClass("websitefeedback"); $('#websitefeedback-btn').addClass("stackedpagefeedback"); $('#pagefeedback-btn').attr('style', 'top: 22%!important;width:11rem;font-size:0.9rem!important; height: 2rem!important;'); $('#websitefeedback-btn').removeClass("websitefeedback"); $('#websitefeedback-btn').addClass("stackedpagefeedback"); } if (buttonsStyle == "hide-buttons") { $("#pagefeedback-btn, #websitefeedback-btn").remove(); // $("#pagefeedback").removeClass("15 30 90 delay animate__animated animate__fadeInRight "); } } </script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.js&quot; integrity="sha384-ch1nZWLCNJ31V+4aC8U2svT7i40Ru+O8WHeLF4Mvq4aS7VD5ciODxwuOCdkIsX86" crossorigin="anonymous"></script> <script> window.onload = function () { if ($("#btnOpenAssessmentChatbot,#chat-widget-container").length) { var buttonsStyle = $("#data-buttons-style").data("buttons-style"); if (buttonsStyle == "stack-buttons") { $('#pagefeedback-btn').attr('style', 'top: 22%!important;width:11rem'); $('#websitefeedback-btn').removeClass("websitefeedback"); $('#websitefeedback-btn').addClass("stackedpagefeedback"); $('#pagefeedback-btn').attr('style', 'top: 22%!important;width:11rem'); //$('#pagefeedback-btn').attr('style', 'width: 12rem!important'); $('#websitefeedback-btn').removeClass("websitefeedback"); $('#websitefeedback-btn').addClass("stackedpagefeedback"); } if (buttonsStyle == "hide-buttons") { $("#pagefeedback-btn, #websitefeedback-btn").remove(); // $("#pagefeedback").removeClass("15 30 90 delay animate__animated animate__fadeInRight "); } } }; var paginationHandler = function () { // store pagination container so we only select it once var $paginationContainer = $(".pagination-container"), $pagination = $paginationContainer.find('.pagination ul'); // click event $pagination.find("li a").on('click.pageChange', function (e) { e.preventDefault(); // get parent li's data-page attribute and current page var parentLiPage = $(this).parent('li').data("page"), currentPage = parseInt($(".pagination-container div[data-page]:visible").data('page')), numPages = $paginationContainer.find("div[data-page]").length; // make sure they aren't clicking the current page if (parseInt(parentLiPage) !== parseInt(currentPage)) { // hide the current page $paginationContainer.find("div[data-page]:visible").hide(); if (parentLiPage === '+') { // next page $paginationContainer.find("div[data-page=" + (currentPage + 1 > numPages ? numPages : currentPage + 1) + "]").show(); } else if (parentLiPage === '-') { // previous page $paginationContainer.find("div[data-page=" + (currentPage - 1 < 1 ? 1 : currentPage - 1) + "]").show(); } else { // specific page $paginationContainer.find("div[data-page=" + parseInt(parentLiPage) + "]").show(); } } $(".pagination .prev .page-link").click(function () { if (currentPage == 4) { $("#websitefeedback-modelbtn").hide(); $(".pagination-container .next").removeClass("d-none"); } }); // disable next and prev button if (currentPage == 4) { $(".pagination-container .next").addClass("d-none"); $("#websitefeedback-modelbtn").show(); } else if (currentPage == 1 || currentPage == 2 || currentPage == 3 || currentPage == 5) { $(".pagination-container .next").removeClass("d-none"); $(".pagination-container .prev").removeClass("d-none"); $("#websitefeedback-modelbtn").hide(); } else { $("#websitefeedback-modelbtn").hide(); } if ($("div[data-page='1']:visible").length == 1) { $(".pagination-container .next").removeClass("d-none"); $(".pagination-container .prev").addClass("d-none"); $("#websitefeedback-modelbtn").hide(); } if ($("div[data-page='3']:visible").length == 1) { $(".pagination-container .next").removeClass("d-none"); $(".pagination-container .prev").removeClass("d-none"); $("#websitefeedback-modelbtn").hide(); } }); }; $(document).ready(paginationHandler); var pageCookieTime = 7; var websiteCookieTime = 0; function checkBrowser() { var browsername = "Others"; var userAgentObj = { "chrome": "", "IExplorer": "", "firefox": "", "safari": "", "opera": "", "Microsoft Edge": "" } // Get the user-agent string let userAgentString = navigator.userAgent; // Detect Chrome let chromeAgent = userAgentString.indexOf("Chrome") > -1; userAgentObj["Chrome"] = chromeAgent; // Detect Microsoft Edge let edgeAgent = userAgentString.indexOf("Edg") > -1; userAgentObj["Microsoft Edge"] = edgeAgent; // Detect Internet Explorer let IExplorerAgent = userAgentString.indexOf("MSIE") > -1 || userAgentString.indexOf("rv:") > -1; userAgentObj["IExplorer"] = IExplorerAgent; // Detect Firefox let firefoxAgent = userAgentString.indexOf("Firefox") > -1; userAgentObj["Firefox"] = firefoxAgent; // Detect Safari let safariAgent = userAgentString.indexOf("Safari") > -1; userAgentObj["Safari"] = safariAgent; // Iphone and Safari if ((userAgentString.indexOf("iPhone") > -1) && (safariAgent)) safariAgent = true; // Discard Safari since it also matches Chrome if ((chromeAgent) && (safariAgent)) safariAgent = false; // Detect Opera let operaAgent = userAgentString.indexOf("OP") > -1; userAgentObj["Opera"] = operaAgent; // Discard Chrome since it also matches Opera if ((chromeAgent) && (operaAgent)) chromeAgent = false; browsername = getKeyByValue(userAgentObj, true); //console.log(userAgentObj); return browsername; } function getKeyByValue(object, value) { return Object.keys(object).find(function (key) { return object[key] === value; }); } function checkOS() { var Name = "Unknown OS"; if (navigator.userAgent.indexOf("Win") != -1) Name = "Windows"; if (navigator.userAgent.indexOf("Mac") != -1) Name = "Macintosh"; if (navigator.userAgent.indexOf("Linux") != -1) Name = "Linux"; if (navigator.userAgent.indexOf("Android") != -1) Name = "Android"; if (navigator.userAgent.indexOf("like Mac") != -1) Name = "iOS"; return Name; } function getCurrentDate() { //const months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ]; const months = ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"]; var currentDate = new Date(); currentDate = currentDate.getFullYear() + "-" + months[currentDate.getMonth()] + "-" + currentDate.getDate(); return currentDate; } function addZero(i) { if (i < 10) { i = "0" + i; } return i; } function getCurrentTime() { var currentTime = new Date(); currentTime = addZero(currentTime.getHours()) + ":" + addZero(currentTime.getMinutes()) + ":" + addZero(currentTime.getSeconds()); return currentTime; } function getOS() { var userAgent = window.navigator.userAgent, platform = window.navigator.platform, macosPlatforms = ['Macintosh', 'MacIntel', 'MacPPC', 'Mac68K'], windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE'], iosPlatforms = ['iPhone', 'iPod'], os = null; if (macosPlatforms.indexOf(platform) !== -1) { os = 'Mac OS'; } else if (/iPad/.test(userAgent)) { os = 'iPad OS'; } else if (iosPlatforms.indexOf(platform) !== -1) { os = 'iOS'; } else if (windowsPlatforms.indexOf(platform) !== -1) { os = 'Windows'; } else if (/CrOS/.test(userAgent)) { os = 'Chrome OS'; } else if (/Android/.test(userAgent)) { os = 'Android'; } else if (!os && /Linux/.test(platform)) { os = 'Linux'; } return os; } function isMobileTablet() { const userAgent = navigator.userAgent; if (/(tablet|ipad|playbook|silk)|(android(?!.*mobi))/i.test(userAgent)) { return "Tablet"; } if (/Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Kindle|Silk-Accelerated|(hpw|web)OS|Opera M(obi|ini)/.test(userAgent)) { return "Mobile"; } return "Desktop"; } function isDepartment() { var Department = document.location.href.split("/")[3]; //var BusinessUnit = document.location.href.split("/")[3]; if (Department != undefined && Department != "") { //console.log("Department"+Department); return Department; } } function isBusinessUnit() { var BusinessUnit = document.location.href.split("/")[4]; if (BusinessUnit != undefined && BusinessUnit != "") { //console.log("Business Unit is "+BusinessUnit); return BusinessUnit; } } var delay = 90 || 0 $(document).ready(function () { $(".pagination-container .prev").addClass("d-none"); }); // Click the pagefeedback btn will bring the modal that comes from the right side of the screen var showPageFeedbackAnimClasses = ("animate__delay-200ms animate__fadeInRight animate__animated animate__faster"); var hidePageFeedbackAnimClasses = ("animate__delay-200ms animate__fadeOutRight animate__animated animate__faster"); var timeoutFn; var isPagefeedbackModalOpen = false; var isWebsitefeedbackModalOpen = false; $(document).on("click", ".pagefeedback", function (event) { event.preventDefault(); var getIdValue = $(this).attr("data-bs-target"); pagefeedbackModalOpen(getIdValue) }); function pagefeedbackModalOpen(getIdValue) { if (isPagefeedbackModalOpen) return; // close any open modal $("body").find("button[data-bs-dismiss='modal']").click(); window.clearTimeout(timeoutFn); isPagefeedbackModalOpen = true; websitefeedbackModalClose("#websitefeedback"); $(getIdValue) .removeClass("delay 15 30 90 120" + hidePageFeedbackAnimClasses) .addClass(showPageFeedbackAnimClasses) .attr("style", "display: block !important;") .attr("aria-modal", "true") .removeAttr("aria-hidden"); setTimeout(function () { $(getIdValue).removeClass(showPageFeedbackAnimClasses) }, 1000); $("body").addClass("modal-pagefeedback-open"); $("#pagefeedback-btn").addClass("pagefeedback-no-delay-active "); }; function pagefeedbackModalClose(getIdValue) { if (!isPagefeedbackModalOpen) return; isPagefeedbackModalOpen = false; $(getIdValue) .removeClass(showPageFeedbackAnimClasses) .addClass(hidePageFeedbackAnimClasses) .attr("style", "display: none;"); $("body").removeClass("modal-pagefeedback-open"); $(".modal-backdrop.show").remove(); setTime = setTimeout(function () { $("#pagefeedback-btn").removeClass("pagefeedback-no-delay-active "); }, 1000) }; if (delay == "0" || delay == 0 || delay == "") { $("#pagefeedback").removeClass("delay 15 30 90 120"); } $(".pageclose-btn").click(function () { var pageFeedbackCookie = "voc_pageFeedback_close"; $.cookie(pageFeedbackCookie, "voc_pageFeedback_close", { expires: pageCookieTime }); }); var websitefeedbackOpenAnimationClasses = ("animate__fadeInUp animate__animated animate__faster") //webside feedback btn $(document).on("click", "#websitefeedback-btn", function (event) { window.clearTimeout(timeoutFn); var getIdValue = $(this).attr("data-bs-target"); $(getIdValue).attr("style", "display: block !important;"); websitefeedbackModalOpen(getIdValue); }); $(".websiteclose-btn").click(function () { websitefeedbackModalClose("#websitefeedback"); if ($('.modal-backdrop').length > 0) { $('.modal-backdrop').remove(); } $("#pagefeedback").removeClass("d-none").hide(); }); function websitefeedbackModalOpen(getIdValue) { if (isWebsitefeedbackModalOpen) return; isWebsitefeedbackModalOpen = true; $(getIdValue) .addClass(websitefeedbackOpenAnimationClasses) .attr("style", "display: block !important;"); // insert the modal backdrop if there isn't one: there was a bug at thank you modal if ($('.modal-backdrop').length === 0) { $('body').append('<div class="modal-backdrop show"></div>'); } else if ($('.modal-backdrop').length > 1) { // remove extra modal backdrop $('.modal-backdrop:gt(0)').remove(); } $(".modal-backdrop.show").attr("style", "display: block !important;"); $("body").removeClass("modal-pagefeedback-open").addClass("modal-websitefeedback-open"); }; function websitefeedbackModalClose(getIdValue) { if (!isWebsitefeedbackModalOpen) return; isWebsitefeedbackModalOpen = false; $(getIdValue) .removeClass(websitefeedbackOpenAnimationClasses) .attr("style", "display: none;"); $(".modal-backdrop.show").remove(); $("body").removeClass("modal-websitefeedback-open"); }; $(".websiteclose-btn").click(function () { websitefeedbackModalClose("#websitefeedback"); if ($('.modal-backdrop').length > 0) { $('.modal-backdrop').remove(); } $("#pagefeedback").removeClass("d-none").hide(); }); //Setup page feedback delays //delay 15 second if ($("#pagefeedback").hasClass("delay") && $("#pagefeedback").hasClass("15")) { timeoutFn = setTimeout(function () { pagefeedbackModalOpen("#pagefeedback"); $("#pagefeedback").attr("aria-modal", "true").removeAttr("aria-hidden"); $("body").addClass("modal-pagefeedback-open modal-open"); $("#pagefeedback-btn").addClass("pagefeedback-delay-active"); }, 15000); } //delay 30 second else if ($("#pagefeedback").hasClass("delay") && $("#pagefeedback").hasClass("30")) { timeoutFn = setTimeout(function () { pagefeedbackModalOpen("#pagefeedback"); $("#pagefeedback").attr("aria-modal", "true").removeAttr("aria-hidden"); $("body").addClass("modal-pagefeedback-open modal-open"); $("#pagefeedback-btn").addClass("pagefeedback-delay-active"); }, 30000); } //delay 90 second else if ($("#pagefeedback").hasClass("delay") && $("#pagefeedback").hasClass("90")) { timeoutFn = setTimeout(function () { pagefeedbackModalOpen("#pagefeedback"); $(".delay").attr("aria-modal", "true").removeAttr("aria-hidden"); $("body").addClass("modal-pagefeedback-open modal-open"); $("#pagefeedback-btn").addClass("pagefeedback-delay-active"); }, 90 * 1000); } //delay 2 mins else if ($("#pagefeedback").hasClass("delay") && $("#pagefeedback").hasClass("120")) { timeoutFn = setTimeout(function () { pagefeedbackModalOpen("#pagefeedback"); $(".delay").attr("aria-modal", "true").removeAttr("aria-hidden"); $("body").addClass("modal-pagefeedback-open modal-open"); $("#pagefeedback-btn").addClass("pagefeedback-delay-active"); }, 2 * 60 * 1000); } //no delay else { $("#pagefeedback").removeAttr("aria-modal").removeAttr("aria-hidden"); $("body").removeClass("modal-pagefeedback-open modal-open"); }; $(".websitefeedback").click(function () { $("#websitefeedback .modal-dialog").css("display", "block"); }); $(".websiteclose-btn").click(function () { websitefeedbackModalClose("#websitefeedback"); }); $(".pageclose-btn").click(function () { pagefeedbackModalClose("#pagefeedback"); }); var websiteFeedbackCookie = "voc_websiteFeedback"; if (typeof $.cookie === 'function') { var cookieWebsiteTest = ($.cookie(websiteFeedbackCookie) != '') ? $.cookie(websiteFeedbackCookie) : null; if (cookieWebsiteTest) { $("#pagereceiver").show(); $("#receiver1").html("Thank you for your feedback"); $(".websitemodal-footer").css("display", "none"); } //check cookie after submit button var pageFeedbackCookie = "voc_pageFeedback_" + document.title; //var pageFeedbackCookie = "voc_pageFeedback"; var cookiePageTest = ($.cookie(pageFeedbackCookie) != '') ? $.cookie(pageFeedbackCookie) : null; // var pageFeedbackCookieCheck= $.cookie ? $.cookie(pageFeedbackCookie): false; if (cookiePageTest) { $("#receiver1").show(); $("#pagereceiver").html("Thank you for your feedback"); $("#websitefeedback .pagemodal-footer").css("display", "none"); $("#pagefeedback").removeClass("delay animate__animated animate__fadeInRight 15 30 90 120"); } //check cookie after Cross button //var pageFeedbackCloseCookie = "voc_pageFeedback_" + document.title + "_close"; var pageFeedbackCloseCookie = "voc_pageFeedback_close"; var cookiePageCloseTest = ($.cookie(pageFeedbackCloseCookie) != '') ? $.cookie(pageFeedbackCloseCookie) : null; // var pageFeedbackCookieCheck= $.cookie ? $.cookie(pageFeedbackCookie): false; if (cookiePageCloseTest) { $("#receiver1").show(); $("#pagefeedback").removeClass("delay animate__animated animate__fadeInRight 15 30 90 120"); } } $("#question-group-2-1, #question-group-2-2, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-5").hide(); $("#question-group-6-1, #question-group-6-2, #question-group-6-3, #question-group-6-4, #question-group-6-5").hide(); $('input[type="radio"]').click(function() { if ($(this).attr("name") == "question-2") { var inputValue = $(this).attr("value"); //alert("inputValue " + inputValue); if (inputValue == "Animals services") { $("#question-group-2-1").show(); $("#question-group-2-2, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Bylaws or public safety") { $("#question-group-2-2").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Building, development or business licenses") { $("#question-group-2-3").show(); $("#question-group-2-1, #question-group-2-2, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "City careers") { $("#question-group-2-4").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-2, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "City Council, boards, commissions or elections") { $("#question-group-2-5").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-2, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Environment, waste, recycling or water") { $("#question-group-2-6").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-2, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Festivals, special events or tourism") { $("#question-group-2-7").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-2, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Recreation, parks or public art") { $("#question-group-2-8").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-2, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Social programs, community services or Census") { $("#question-group-2-9").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-2, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Taxes or property assessment") { $("#question-group-2-10").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-2, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Traffic, transportation or roads") { $("#question-group-2-11").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-2").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Other") { $("#question-group-2-1, #question-group-2-2, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").addClass("mb-responsive"); } } if ($(this).attr("name") == "question-4") { var inputValue = $(this).attr("value"); if (inputValue == "yes") { $("#question-group-5").show(); } else if (inputValue == "no") { $("#question-group-5").hide(); } } if ($(this).attr("name") == "question-6") { var inputValue = $(this).attr("value"); if (inputValue == "yes") { $("#question-group-6-1, #question-group-6-2, #question-group-6-3, #question-group-6-4, #question-group-6-5").show(); $("#question-group-6").removeClass("mb-responsive"); } else if (inputValue == "no") { $("#question-group-6-1, #question-group-6-2, #question-group-6-3, #question-group-6-4, #question-group-6-5").hide(); $("#question-group-6").addClass("mb-responsive"); } } }); // click outside of the modal dialog will hide the backdrop background and the modal window var modalContentWindow = $(".voc-modal-content"); $("body").on('click', function (e) { if (($(e.target).closest(modalContentWindow).length === 0) && ($(".modal-dialog").hasClass("modal-dialog-voc"))) { modalContentWindow.parent().parent().hide().removeClass("show").removeAttr("aria-modal"); $("body").removeClass("modal-open"); if (isWebsitefeedbackModalOpen) { websitefeedbackModalClose("#websitefeedback"); $(".modal-backdrop").hide(); } if (isPagefeedbackModalOpen) { pagefeedbackModalClose("#pagefeedback"); $(".modal-backdrop").hide(); } } }); $("#question-group-2-1, #question-group-2-2, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-5").hide(); $("#question-group-6-1, #question-group-6-2, #question-group-6-3, #question-group-6-4, #question-group-6-5").hide(); $('input[type="radio"]').click(function () { if ($(this).attr("name") == "question-2") { var inputValue = $(this).attr("value"); //alert("inputValue " + inputValue); if (inputValue == "Animals services") { $("#question-group-2-1").show(); $("#question-group-2-2, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Bylaws or public safety") { $("#question-group-2-2").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Building, development or business licenses") { $("#question-group-2-3").show(); $("#question-group-2-1, #question-group-2-2, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "City careers") { $("#question-group-2-4").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-2, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "City Council, boards, commissions or elections") { $("#question-group-2-5").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-2, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Environment, waste, recycling or water") { $("#question-group-2-6").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-2, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Festivals, special events or tourism") { $("#question-group-2-7").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-2, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Recreation, parks or public art") { $("#question-group-2-8").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-2, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Social programs, community services or Census") { $("#question-group-2-9").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-2, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Taxes or property assessment") { $("#question-group-2-10").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-2, #question-group-2-11").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Traffic, transportation or roads") { $("#question-group-2-11").show(); $("#question-group-2-1, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-2").hide(); $("#question-group-2").removeClass("mb-responsive"); } else if (inputValue == "Other") { $("#question-group-2-1, #question-group-2-2, #question-group-2-3, #question-group-2-4, #question-group-2-5, #question-group-2-6, #question-group-2-7, #question-group-2-8, #question-group-2-9, #question-group-2-10, #question-group-2-11").hide(); $("#question-group-2").addClass("mb-responsive"); } } }); // click outside of the modal dialog will hide the backdrop background and the modal window var modalContentWindow = $(".voc-modal-content"); $("body").on('click', function (e) { if (($(e.target).closest(modalContentWindow).length === 0) && ($(".modal-dialog").hasClass("modal-dialog-voc"))) { modalContentWindow.parent().parent().hide().removeClass("show").removeAttr("aria-modal"); $("body").removeClass("modal-open"); if(isWebsitefeedbackModalOpen) { websitefeedbackModalClose("#websitefeedback"); $(".modal-backdrop").hide(); } if(isPagefeedbackModalOpen) { pagefeedbackModalClose("#pagefeedback"); $(".modal-backdrop").hide(); } } }); $(document).on('click', '[name="webrating-1"]', function () { $('.webrating-1').hide(); }); $(document).on('click', '[name="question-1"]', function () { $('.question-1').hide(); }); $(document).on('click', '[name="question-2"]', function () { $('.question-2').hide(); }); $(document).on('click', '[name="question-2-1"]', function () { $('.question-2-1').hide(); }); $(document).on('click', '[name="question-2-2"]', function () { $('.question-2-2').hide(); }); $(document).on('click', '[name="question-2-3"]', function () { $('.question-2-3').hide(); }); $(document).on('click', '[name="question-2-4"]', function () { $('.question-2-4').hide(); }); $(document).on('click', '[name="question-2-5"]', function () { $('.question-2-5').hide(); }); $(document).on('click', '[name="question-2-6"]', function () { $('.question-2-6').hide(); }); $(document).on('click', '[name="question-2-7"]', function () { $('.question-2-7').hide(); }); $(document).on('click', '[name="question-2-8"]', function () { $('.question-2-8').hide(); }); $(document).on('click', '[name="question-2-9"]', function () { $('.question-2-9').hide(); }); $(document).on('click', '[name="question-2-10"]', function () { $('.question-2-10').hide(); }); $(document).on('click', '[name="question-2-11"]', function () { $('.question-2-11').hide(); }); $(document).on('click', '[name="webrating-2"]', function () { $('.webrating-2').hide(); }); $(document).on('keypress', '[name="description-1"]', function () { $('.description-1').hide(); }); $(document).on('click', '[name="question-4"]', function () { $('.question-4').hide(); }); $(document).on('click', '[name="question-5"]', function () { $('.question-5').hide(); }); $(document).on('keypress', '[name="description-2"]', function () { $('.description-2').hide(); }); $(document).on('click', '[name="webrating-3"]', function () { $('.webrating-3').hide(); }); $(document).on('click', '[name="webrating-4"]', function () { $('.webrating-4').hide(); }); $(document).on('click', '[name="webrating-5"]', function () { $('.webrating-5').hide(); }); $(document).on('click', '[name="webrating-6"]', function () { $('.webrating-6').hide(); }); $(document).on('click', '[name="webrating-7"]', function () { $('.webrating-7').hide(); }); $(document).on('click', '[name="webrating-8"]', function () { $('.webrating-8').hide(); }); $(document).on('click', '[name="question-6"]', function () { $('.question-6').hide(); }); //$('.GenderValidation').remove(); $("#websitefeedback-modelbtn").click(function (e) { e.preventDefault(); var webFeedbackVar = { webrating_1: $("input[name='webrating-1']:checked").val() || "Zero", question_1: $("input[name='question-1']:checked").val() || "none", question_2: $("input[name='question-2']:checked").val() || "none", question_2_1: $("input[name='question-2-1']:checked").val() || "none", question_2_2: $("input[name='question-2-2']:checked").val() || "none", question_2_3: $("input[name='question-2-3']:checked").val() || "none", question_2_4: $("input[name='question-2-4']:checked").val() || "none", question_2_5: $("input[name='question-2-5']:checked").val() || "none", question_2_6: $("input[name='question-2-6']:checked").val() || "none", question_2_7: $("input[name='question-2-7']:checked").val() || "none", question_2_8: $("input[name='question-2-8']:checked").val() || "none", question_2_9: $("input[name='question-2-9']:checked").val() || "none", question_2_10: $("input[name='question-2-10']:checked").val() || "none", question_2_11: $("input[name='question-2-11']:checked").val() || "none", webrating_2: $("input[name='webrating-2']:checked").val() || "Zero", description_1: $("textarea[name='description-1']").val() || "none", question_4: $("input[name='question-4']:checked").val() || "none", question_5: $("input[name='question-5']:checked").val() || "none", description_2: $("textarea[name='description-2']").val() || "none", webrating_3: $("input[name='webrating-3']:checked").val() || "Zero", //webrating_4: $("input[name='webrating-4']:checked").val() || 0, webrating_5: $("input[name='webrating-5']:checked").val() || "Zero", webrating_6: $("input[name='webrating-6']:checked").val() || "Zero", webrating_7: $("input[name='webrating-7']:checked").val() || "Zero", //webrating_8: $("input[name='webrating-8']:checked").val() || 0, question_6: $("input[name='question-6']:checked").val() || "none", question_6_1: $("input[name='question-6-1']:checked").val() || "none", question_6_2: $("input[name='question-6-2']:checked").val() || "none", question_6_3: $("input[name='question-6-3']:checked").val() || "none", //question_6_4: $("input[name='question-6-4']:checked").val() || "none", question_6_5: $("input[name='question-6-5']:checked").val() || "none" }; /* if(webFeedbackVar.webrating_1 == 0 || webFeedbackVar.question_1 == 0 || webFeedbackVar.question_2 == 0 || (webFeedbackVar.question_2_1 == 0 && webFeedbackVar.question_2_2 == 0 && webFeedbackVar.question_2_3 == 0 && webFeedbackVar.question_2_4 == 0 && webFeedbackVar.question_2_5 == 0 && webFeedbackVar.question_2_6 == 0 && webFeedbackVar.question_2_7 == 0 && webFeedbackVar.question_2_8 == 0 && webFeedbackVar.question_2_9 == 0 && webFeedbackVar.question_2_10 == 0 && webFeedbackVar.question_2_11 == 0) || webFeedbackVar.webrating_2 == 0 || webFeedbackVar.description_1 == "" || (webFeedbackVar.question_4 == 0 && webFeedbackVar.question_5 == 0) || webFeedbackVar.description_2 == "" || webFeedbackVar.webrating_3 == 0 || webFeedbackVar.webrating_4 == 0 || webFeedbackVar.webrating_5 == 0 || webFeedbackVar.webrating_6 == 0 || webFeedbackVar.webrating_7 == 0 || webFeedbackVar.webrating_8 == 0 || webFeedbackVar.question-6 == 0){ $('.web-error').html("<span class='form-vld-msg error GenderValidation'><span class='prefix'>Error : </span>This field is required.</span>"); return false; } */ //e.preventDefault(); //return device type var pageTitle = document.title; var OperatingSystem = checkOS(); var deviceType = isMobileTablet(); //return the browser namr var Browseragent = checkBrowser() || "Others"; //The appName property returns the application name of the browser var navigatorappName = navigator.appName; //The appVersion property returns version information about the browser var navigatorappVersion = navigator.appVersion; //The product property returns the product name of the browser. var navigatorproduct = navigator.product; //The userAgent property returns the user-agent header sent by the browser to the server var navigatoruserAgent = navigator.userAgent; //The platform property returns the browser platform (operating system) var navigatorplatform = navigator.platform; //The onLine property returns true if the browser is online var navigatoronLine = navigator.onLine; //The window.screen object contains information about the user's screen. var screenwidth = screen.width; //The screen.height property returns the height of the visitor's screen in pixels. var screenheight = screen.height; //Return the URL of the page var docurl = document.URL; //Return the refferal URL var docreferrer = document.referrer; $.cookie("voc_websiteFeedback", "voc_website_feedback", { expires: websiteCookieTime }); $("#websitefeedback .modal-footer").attr("style", "display:none"); websiteFeedback = { page: { webSiteInfo: { "Device_Type": deviceType, "Operating_System": getOS(), "Browser_agent": Browseragent, "Navigator_appName": navigatorappName, "Navigator_appVersion": navigatorappVersion, "Navigator_product": navigatorproduct, "Navigator_userAgent": navigatoruserAgent, "Navigator_platform": navigatorplatform, "Navigator_onLine": navigatoronLine, "Viewport": screenwidth + " X " + screenheight, "Document_url": docurl, "Current_City": "", "Current_Date": getCurrentDate(), "Current_Time": getCurrentTime(), "page_title": pageTitle, "Document_referrer": docreferrer, "Department": isDepartment(), "BusinessUnit": isBusinessUnit(), "Userfeedback": { "surveyType": "Visit", "1_Overall satisfaction with Calgary.ca?": webFeedbackVar.webrating_1, "2_Reason for your visit?": webFeedbackVar.question_1, "3_How easy was it to complete your task?": webFeedbackVar.webrating_2, "4_What task were you trying to perform?": webFeedbackVar.description_1, "5_Did you have difficulty completing your task?": webFeedbackVar.question_4, "6_What action did you take or will you take?": webFeedbackVar.question_5, "7_What would make your experience better?": webFeedbackVar.description_2, "8_How easy it is to find or access information?": webFeedbackVar.webrating_3, //"9_How would you rate how clear the information is on Calgary.ca?": webFeedbackVar.webrating_4, "10_How easy Calgary.ca is to use?": webFeedbackVar.webrating_5, "11_Were you provided answers to your questions?": webFeedbackVar.webrating_6, "12_Is the information accurate and relevant?": webFeedbackVar.webrating_7, //"12_1_How would you rate how well Calgary.ca meets your overall expectations compared to other websites you visit?": webFeedbackVar.webrating_8, "13_What was the main area of Calgary.ca you were visiting?": webFeedbackVar.question_2, "14_What Animal service were you looking for?": webFeedbackVar.question_2_1, "15_What Bylaw or Public Safety service were you looking for?": webFeedbackVar.question_2_2, "16_What Building, Development or Business service were you looking for?": webFeedbackVar.question_2_3, "17_What Careers service were you looking for?": webFeedbackVar.question_2_4, "18_What Census or City council service were you looking for?": webFeedbackVar.question_2_5, "19_What Environment, Waste, Water service were you looking for?": webFeedbackVar.question_2_6, "20_What Events or Tourism service were you looking for?": webFeedbackVar.question_2_7, "21_What Recreation, Parks, Public Art service were you looking for?": webFeedbackVar.question_2_8, "22_What Social Program, Community Service were you looking for?": webFeedbackVar.question_2_9, "23_What Tax or Assessment service were you looking for?": webFeedbackVar.question_2_10, "24_What Traffic, Transportation, Roads service were you looking for?": webFeedbackVar.question_2_11, "25_To help group these survey results, would you answer a few quick demographic questions?": webFeedbackVar.question_6, "26_What is your role in visiting today?": webFeedbackVar.question_6_1, "27_What is your age group?": webFeedbackVar.question_6_2, "28_What is the highest level of schooling?": webFeedbackVar.question_6_3, // "29_What device were you using on Calgary.ca today?": webFeedbackVar.question_6_4, "30_Where do you live?": webFeedbackVar.question_6_5 } } } } //console.log(websiteFeedback); $("#receiver1").html("Thank you for your feedback"); $("#websitefeedback").attr("style", "display:block !important;"); }); $(document).on('click', '[name="rating"]', function () { $('.rating').hide(); }); $(document).on('click', '[name="q1"]', function () { $('.q1').hide(); }); $(document).on('keypress', '[name="pageFeedback-useful"]', function () { $('.pageFeedback-useful').hide(); }); $(document).on('keypress', '[name="pageFeedback-description"]', function () { $('.pageFeedback-description').hide(); }); $("#pagefeedback-modelbtn").click(function (e) { //window.alert("Create dataLayer"); e.preventDefault(); //return device type var pageTitle = document.title; var OperatingSystem = checkOS(); var deviceType = isMobileTablet(); //return the browser namr var Browseragent = checkBrowser() || "Others"; //The appName property returns the application name of the browser var navigatorappName = navigator.appName; //The appVersion property returns version information about the browser var navigatorappVersion = navigator.appVersion; //The product property returns the product name of the browser. var navigatorproduct = navigator.product; //The userAgent property returns the user-agent header sent by the browser to the server var navigatoruserAgent = navigator.userAgent; //The platform property returns the browser platform (operating system) var navigatorplatform = navigator.platform; //The onLine property returns true if the browser is online var navigatoronLine = navigator.onLine; //The window.screen object contains information about the user's screen. var screenwidth = Math.max(document.documentElement.clientWidth || 0, window.innerWidth || 0, screen.width || 0); //The screen.height property returns the height of the visitor's screen in pixels. var screenheight = Math.max(document.documentElement.clientHeight || 0, window.innerHeight || 0, screen.height || 0); //Return the URL of the page var docurl = document.URL; //Return the refferal URL var docreferrer = document.referrer; // var pagetitle = document.title; //q1a var selectservice = $("select[name=q1a]").children("option:selected").val() || "none"; //var selectservice = $(".cmp-form-options__field--drop-down").children("option:selected").val(); var ratingValue = $("input[name='rating']:checked").val() || "Zero"; var q1 = $("input[name='q1']:checked").val() || "none"; //var q1 = $(".cmp-form-options__field--radio:checked").val(); var pageFeedback_useful = $("textarea[name=pageFeedback-useful]").val() || "none"; var pageFeedback_description = $("textarea[name=pageFeedback-description]").val() || "none"; var informationClass = $('#pagefeedback').hasClass('information'); var taskClass = $('#pagefeedback').hasClass('task'); var surveyType; if (informationClass == true) { surveyType = "Information"; } else if (taskClass == true) { surveyType = "Task"; } else { surveyType = "Covid"; } if (ratingValue) { ratingValue = ratingValue; } else { ratingValue = "Zero" } if (q1) { q1 = q1; } else { q1 = 0 } if (selectservice) { selectservice = selectservice; } else { selectservice = "none" } if (pageFeedback_useful) { pageFeedback_useful = pageFeedback_useful; } else { pageFeedback_useful = "none" } if (pageFeedback_description) { pageFeedback_description = pageFeedback_description; } else { pageFeedback_description = "none" } pageFeedback = { page: { pageInfo: { "Device_Type": deviceType, "Operating_System": getOS(), "Browser_agent": Browseragent, "Navigator_appName": navigatorappName, "Navigator_appVersion": navigatorappVersion, "Navigator_product": navigatorproduct, "Navigator_userAgent": navigatoruserAgent, "Navigator_platform": navigatorplatform, "Navigator_onLine": navigatoronLine, "Viewport": screenwidth + " X " + screenheight, "Document_url": docurl, "Current_City": "", "Current_Date": getCurrentDate(), "Current_Time": getCurrentTime(), "page_title": pageTitle, "Document_referrer": docreferrer, "Department": isDepartment(), "BusinessUnit": isBusinessUnit(), "Userfeedback": { "1_surveyType": surveyType, "2_How_satisfied_are_you_with_this_page": ratingValue, "3_Did_you_find_the_information_you_were_looking_for": q1, "4_pageFeedback_useful": pageFeedback_useful, "5_pageFeedback_description": pageFeedback_description, "6_selectservice": selectservice } } } } //Add condition for form is filled or not if (ratingValue != 'Zero' || q1 != 'none') { //var pageFeedbackCookie = "voc_pageFeedback"; var pageTitle = document.title; var pageFeedbackCookiewithSession = "voc_pageFeedback_" + pageTitle; //$.cookie(pageFeedbackCookie, "voc_pageFeedback", { expires : pageCookieTime }); $.cookie(pageFeedbackCookiewithSession, "voc_pageFeedback_" + pageTitle, { expires: pageCookieTime }); $("#pagereceiver").html("Thank you for your feedback"); $("#pagefeedback .pagemodal-footer").css("display", "none"); setTimeout(function () { pagefeedbackModalClose("#pagefeedback"); }, 6000); } else if (ratingValue == 'Zero' && q1 == 'none') { pagefeedbackModalClose("#pagefeedback"); function submitForm(event) { event.preventDefault(); window.history.back(); } } }); $("#pageFeedback-group-1").hide(); $("#pageFeedback-group").hide(); $('input[type="radio"]').click(function () { if ($(this).attr("name") != "rating") { var inputValue = $(this).attr("value"); if (inputValue == "eventually" || inputValue == "no") { $("#pageFeedback-group, #pageFeedback-group-1").show(); } else { $("#pageFeedback-group, #pageFeedback-group-1").hide(); } } }); //}); </script> <style> .vocpar .btn-sm.cui.stackedpagefeedback { display: inline-block; position: fixed; right: 0; width: 12rem; transform: rotate(270deg) !important; -webkit-transform: rotate(270deg) !important; -ms-transform: rotate(270deg) !important; transform-origin: right bottom; -webkit-transform-origin: right bottom; -ms-transform-origin: right bottom; top: 50%; height: 2rem; z-index: 10001; font-size: 0.9rem !important; } @media (min-width: 1050px) { .vocpar .btn-sm.cui.stackedpagefeedback { top: 50% !important; height: 2rem !important; } } body.modal-pagefeedback-openstacked .side-btnstacked.pageclose-btn { z-index: 5000 !important; } </style> <script> window.onload = function () { if ($("#btnOpenAssessmentChatbot,#chat-widget-container").length) { var buttonsStyle = $("#data-buttons-style").data("buttons-style"); if (buttonsStyle == "stack-buttons") { $('#pagefeedback-btn').attr('style', 'top: 22%!important;width:11rem; font-size:0.9rem!important; height: 2rem!important;'); $('#websitefeedback-btn').removeClass("websitefeedback"); $('#websitefeedback-btn').addClass("stackedpagefeedback"); $('#pagefeedback-btn').attr('style', 'top: 22%!important;width:11rem;font-size:0.9rem!important; height: 2rem!important;'); $('#websitefeedback-btn').removeClass("websitefeedback"); $('#websitefeedback-btn').addClass("stackedpagefeedback"); } if (buttonsStyle == "hide-buttons") { $("#pagefeedback-btn, #websitefeedback-btn").remove(); $("#pagefeedback").removeClass("15 30 90 delay animate__animated animate__fadeInRight "); } } }; </script> </div> </div> </div> </div> </div> </div> <div class="footer"><div class="site-footer section"> <footer class="cui coc-footer"> <div class="footer-inner"> <div class="row mb-md"> <div class="col-12"> <div class="anchor-link"> <div class="cui anchor-link-container flex-end"> <a class="cui anchor-link" href="#cocis-maincontent"> Return to top<span class="cicon-arrow-up-light icon-right" aria-hidden="true"> </span> </a> </div> </div> </div> </div> <div class="footer-links-vert footer-section footer-grid"> <div class="footer-col"> <h2 class="footer-links-group-title"> <button aria-expanded="false" aria-controls="footer-about-panel">About</button> </h2> <div class="footer-accordion-panel" id="footer-about-panel"> <ul class="list-unstyled mb-0 col-count-2"> <li> <a href="/our-finances.html">Budget and finances</a> <p>How we budget to deliver programs and services.</p> </li> <li> <a href="/our-strategy/overview.html">Our strategy</a> <p>How we are aligned to deliver on Council’s direction.</p> </li> <li> <a href="/about-us.html">About us</a> </li> <li> <a href="/events.html">Events</a> </li> <li> <a href="/research.html">Research and data</a> </li> </ul> </div> </div> <div class="footer-col"> <h2 class="footer-links-group-title"> <button aria-expanded="false" aria-controls="footer-services-panel">Services</button> </h2> <div class="footer-accordion-panel" id="footer-services-panel"> <ul class="list-unstyled mb-0 col-count-2"> <li> <a href="https://calgary-cwiprod.motorolasolutions.com&quot; target="_blank">311</a> </li> <li> <a href="/careers.html">Careers</a> </li> <li> <a href="https://liveandplay.calgary.ca/&quot; target="_blank">Live and Play</a> </li> <li> <a href="http://cityonline.calgary.ca&quot; target="_blank">City Online</a> </li> <li> <a href="https://maps.calgary.ca&quot; target="_blank">Maps</a> </li> <li> <a href="http://newsroom.calgary.ca&quot; target="_blank">News</a> </li> </ul> </div> </div> <div class="footer-col"> <h2 class="footer-links-group-title"> <button aria-expanded="false" aria-controls="footer-employees-panel">Employees</button> </h2> <div class="footer-accordion-panel" id="footer-employees-panel"> <ul> <!-- <li><a href="/content/www/en/home/cfod/it/employee-portal.html">Employee Portal login</a></li> --> <li> <a href="/employees/employee-portal.html">Employee Portal sign in</a> </li> <li> <a href="/employees.html">Employee resources</a> </li> </ul> </div> </div> </div> <div class="footer-links-vert footer-section row"> <div class="col-xl-8 col-sm-12 row"> <div class="col-sm-12 col-md-4 logo-wrapper"> <!-- Logo --> <a href="/home.html" class="coc-logo"> <img src="/etc/clientlibs/www/main/images/coc-logo.svg" class="coc-logo-desktop printarea" alt="Return to the Calgary.ca homepage"/> </a> </div> <div class="col-sm-12 col-md-7 land-acknowledgement"> <p>The City of Calgary is on the ancestral lands of the Blackfoot People and home to Treaty 7 Nations and Métis Nations Districts 5 and 6. <a href="/our-city.html">Read full Land Acknowledgement.</a></p> </div> </div> <div class="col-md-12 col-lg-4 social-media-links footer-section footer-links-horz"> <ul class="list-unstyled mb-0"> <li> <a href="https://www.facebook.com/CityofCalgary&quot; target="_blank"> <span class="cicon-facebook-square"></span> </a> </li> <li> <a href="https://www.instagram.com/cityofcalgary&quot; target="_blank"> <span class="cicon-instagram"></span> </a> </li> <li> <a href="https://www.youtube.com/c/thecityofcalgary&quot; target="_blank"> <span class="cicon-youtube-square"></span> </a> </li> <li> <a href="https://www.linkedin.com/company/city-of-calgary&quot; target="_blank"> <span class="cicon-linkedin-square"></span> </a> </li> <li> <a href="https://twitter.com/cityofcalgary&quot; target="_blank"> <span class="cicon-twitter-square"></span> </a> </li> </ul> <div class="button"> <a href="/info-requests/social-media.html" class="cui btn-md utility-btn-solid / mb-0"> See all social media channels </a> </div> </div> </div> <div class="footer-links-horz footer-section"> <ul> <li> <a href="/info-requests/privacy-policy.html">Privacy Policy</a> </li> <li> <a href="/info-requests/terms-of-use.html">Terms of Use</a> </li> <li> <a href="/info-requests/accessibility.html">Accessibility</a> </li> <li> <a href="/general/search-tips.html">Search Tips</a> </li> </ul> </div> <div class="footer-copyright"> <p>2026. All rights reserved. Official website of The City of Calgary, located in Calgary, Alberta, Canada.</p> </div> </div> </footer> <script> // Function to handle accordion functionality $(document).ready(function () { var groupTitles = $(".footer-links-group-title button"); var ACCORDION_MAX_WIDTH = 575; groupTitles.on("click", function () { if ($(window).width() <= ACCORDION_MAX_WIDTH) { var $this = $(this); var isExpanded = $this.attr("aria-expanded") === "true"; groupTitles.not($this).attr("aria-expanded", "false"); $(".footer-accordion-panel").not($this.parent().next()).slideUp(); $this.attr("aria-expanded", !isExpanded); $this.parent().next().slideToggle(); } }); $(window) .on("resize", function () { if ($(window).width() > ACCORDION_MAX_WIDTH) { $(".footer-accordion-panel").show(); $(".footer-links-group-title button").attr("aria-expanded", "false"); } else { $(".footer-accordion-panel").each(function () { var $panel = $(this); var $button = $panel.prev().find("button"); if ($button.attr("aria-expanded") === "false") { $panel.hide(); } }); } }) .trigger("resize"); }); </script> <!-- ------------------------------------------------------- Start of credits ------------------------------------------------------- Icon and SVG Design Credits | Last Update: April 1, 2020 ------------------------------------------------------- Icon Name: cimg-cover-your-cough Icon URL: https://www.iconfinder.com/iconsets/minimal-disease Designer: PictureWindow Designers URL: https://www.iconfinder.com/agoehlert License: Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Lisense URL: https://creativecommons.org/licenses/by-sa/3.0/ ------------------------------------------------------- Icon Names: cimg-avoid-contact, cimg-avoid-crowds, cimg-avoid-touching-face, cimg-clipboard-list, cimg-hand-sanitizer, cimg-hand-washing, cimg-hospital-bed, cimg-mask, cimg-physical-distancing, cimg-symptom-coughing, cimg-symptom-fever, cimg-symptom-headache Icon URL: https://www.iconfinder.com/iconsets/stop-virus-outline-iconset Designer: LAFS Designers URL: https://www.iconfinder.com/agoehlert License: Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Lisense URL: https://creativecommons.org/licenses/by-sa/3.0/ ------------------------------------------------------- --> </div> </div> </body> </html>

Links Found

URLs discovered in the source file.