function printDiv(eh)
{
var divToPrint=document.getElementById(eh);
var newWin=window.open('','Print-Window');
newWin.document.open();
newWin.document.write('<html><body onload="window.print()">'+divToPrint.innerHTML+'</body></html>');
newWin.document.close();
setTimeout(function(){newWin.close();},10);
}
(function(c, l, a, r, i, t, y) {
c[a] = c[a] || function() {
(c[a].q = c[a].q || []).push(arguments)
};
t = l.createElement(r);
t.async = 1;
t.src = "https://www.clarity.ms/tag/" + i + "?ref=wordpress";
y = l.getElementsByTagName(r)[0];
y.parentNode.insertBefore(t, y);
})(window, document, "clarity", "script", "uguy8v1u4s");
var ajaxurl = 'https://www.ampmlock.com/wp-admin/admin-ajax.php';
/*! LoadCSS. [c]2020 Filament Group, Inc. MIT License */
/* This file is meant as a standalone workflow for
- testing support for link[rel=preload]
- enabling async CSS loading in browsers that do not support rel=preload
- applying rel preload css once loaded, whether supported or not.
*/
(function(w){"use strict";var wpacuLoadCSS=function(href,before,media,attributes){var doc=w.document;var ss=doc.createElement('link');var ref;if(before){ref=before}else{var refs=(doc.body||doc.getElementsByTagName('head')[0]).childNodes;ref=refs[refs.length-1]}
var sheets=doc.styleSheets;if(attributes){for(var attributeName in attributes){if(attributes.hasOwnProperty(attributeName)){ss.setAttribute(attributeName,attributes[attributeName])}}}
ss.rel="stylesheet";ss.href=href;ss.media="only x";function ready(cb){if(doc.body){return cb()}
setTimeout(function(){ready(cb)})}
ready(function(){ref.parentNode.insertBefore(ss,(before?ref:ref.nextSibling))});var onwpaculoadcssdefined=function(cb){var resolvedHref=ss.href;var i=sheets.length;while(i--){if(sheets[i].href===resolvedHref){return cb()}}
setTimeout(function(){onwpaculoadcssdefined(cb)})};function wpacuLoadCB(){if(ss.addEventListener){ss.removeEventListener("load",wpacuLoadCB)}
ss.media=media||"all"}
if(ss.addEventListener){ss.addEventListener("load",wpacuLoadCB)}
ss.onwpaculoadcssdefined=onwpaculoadcssdefined;onwpaculoadcssdefined(wpacuLoadCB);return ss};if(typeof exports!=="undefined"){exports.wpacuLoadCSS=wpacuLoadCSS}else{w.wpacuLoadCSS=wpacuLoadCSS}}(typeof global!=="undefined"?global:this))
Gaps, cracks, split wood, sticky locks, and rotting frames are just some door issues people run into every day and each one compromises your security and safety without proper door repair. It may seem like the only way to repair your door is a complete and expensive overhaul or door replacement.
More often than not our technicians can work with you and your budget to find a solution to keep your house secure.
With our 3 locations in Baltimore city and county we provide comprehensive door repair, replacement, and installation services throughout Baltimore and surrounding counties in Maryland to Washington DC. Our repair technicians are true professionals with many years of experience under their belt installing, replacing, and repairing doors including garage doors. Give us a call today for a free quote or to schedule your appointment.
Front Door Replacement & Repair
Many criminals take advantage of older entry doors that show their age, gaining access by prying them open, kicking them down, or “credit carding” the unprotected locks. With older wooden doors especially, you can see the cracks, holes, and missing chunks from every item installed on it in the last 30 years.
Those cracks and chunks missing make your door weak and unstable. When doors end up this bad the frame itself usually ends up just as bad as the door needing repairs as well. If you aren’t looking to replace the whole door and frame then we can work with you to see if there might be a more economical option for repair.
We can’t promise every door can be repaired but we will try our best to see if it is at all possible instead of complete replacement.
Door Reinforcement
A standard door with a standard door frame can be easily kicked in by someone because of the small screws and wood frame. Preventing this is crucial to your and your loved ones safety in Baltimore, Maryland, and Washington DC.
One of the main ways we can make your door kick proof is to reinforce the frame itself with large metal plating and secure it to the wall around it. What this does is force the criminal to break the frame, wall, and hardened steel plating to get in, a troublesome task even for a battering ram.
The next step is adding another lock to top and/or bottom of the door so the tension is spread out evenly requiring more force to break down the door instead of just 1 critical access point.
Door Weather-stripping Replacement
Does the space around your door feel a little drafty? Losing heat in the winter? Chances are those gaps and spaces around your door are letting air pass freely while raising your electricity bill and lowering your level of comfort. Installing weather stripping on your door is an investment you can’t afford to pass up. Not only does it make it harder for criminals to wedge tools in between the door and frame but it also keeps your house air tight.
Those gaps in the door may also be letting in some unwanted guests specially if they are toward the bottom of the door. While doors can’t prevent all pests, they can keep them out more successfully than any spray, trap, or house cat. There are many options for weather stripping your entrance ways, give us a call and ask about pricing and types available for your door.
Patio/Sliding Door Repair
Patio doors and sliding glass doors see just as much use and abuse as the front door your home or maybe even more. All exterior doors such as the sliding glass door leading to you deck or patio are also under constant abuse from the elements of weather.
Sliding glass doors can encounter various problem after years of use such as getting stuck, lock not working, or broken/cracked glass. Our experienced technicians can resolve most door issues without having to replace the door.
Patio doors are also put under same stresses and can often end up with rotten wood specially around the bottom of the frame. Even though many door repair companies will have you believe that a replacement is necessary our door techs can very often repair just the rotting part of the frame. Repairing instead of replacing the door frame can be a much more cost effective option in most cases.
If you are in need of a patio or sliding door repair in Baltimore, Maryland, or DC give us a call today.
Window & Glass Repair
Windows help us to see outside without having to feel the outside. A broken or cracked glass can not only cause temperature loss but also looks unsightly. Window glass can be dangerous to replace by yourself if you do not have the experience and the right tools.
Our technicians can provide immediate relief by providing emergency board up and replace the glass as soon as possible. It is usually much cheaper to replace just the glass in your window than to replace the whole window, saving you a good chunk of money.
Glass breakage is usually not a common problem for patio or sliding doors as they are made with more durable tempered glass. When the glass does break, it is recommended to hire a professional company for proper repairs. Our technicians can replace the glass in your door with the right materials to ensure an airtight seal.
(function( w ){
"use strict";
// rel=preload support test
if( !w.loadCSS ){
w.loadCSS = function(){};
}
// define on the loadCSS obj
var rp = loadCSS.relpreload = {};
// rel=preload feature support test
// runs once and returns a function for compat purposes
rp.support = (function(){
var ret;
try {
ret = w.document.createElement( "link" ).relList.supports( "preload" );
} catch (e) {
ret = false;
}
return function(){
return ret;
};
})();
// if preload isn't supported, get an asynchronous load by using a non-matching media attribute
// then change that media back to its intended value on load
rp.bindMediaToggle = function( link ){
// remember existing media attr for ultimate state, or default to 'all'
var finalMedia = link.media || "all";
function enableStylesheet(){
// unbind listeners
if( link.addEventListener ){
link.removeEventListener( "load", enableStylesheet );
} else if( link.attachEvent ){
link.detachEvent( "onload", enableStylesheet );
}
link.setAttribute( "onload", null );
link.media = finalMedia;
}
// bind load handlers to enable media
if( link.addEventListener ){
link.addEventListener( "load", enableStylesheet );
} else if( link.attachEvent ){
link.attachEvent( "onload", enableStylesheet );
}
// Set rel and non-applicable media type to start an async request
// note: timeout allows this to happen async to let rendering continue in IE
setTimeout(function(){
link.rel = "stylesheet";
link.media = "only x";
});
// also enable media after 3 seconds,
// which will catch very old browsers (android 2.x, old firefox) that don't support onload on link
setTimeout( enableStylesheet, 3000 );
};
// loop through link elements in DOM
rp.poly = function(){
// double check this to prevent external calls from running
if( rp.support() ){
return;
}
var links = w.document.getElementsByTagName( "link" );
for( var i = 0; i < links.length; i++ ){
var link = links[ i ];
// qualify links to those with rel=preload and as=style attrs
if( link.rel === "preload" && link.getAttribute( "as" ) === "style" && !link.getAttribute( "data-loadcss" ) ){
// prevent rerunning on link
link.setAttribute( "data-loadcss", true );
// bind listeners to toggle media back
rp.bindMediaToggle( link );
}
}
};
// if unsupported, run the polyfill
if( !rp.support() ){
// run once at least
rp.poly();
// rerun poly on an interval until onload
var run = w.setInterval( rp.poly, 500 );
if( w.addEventListener ){
w.addEventListener( "load", function(){
rp.poly();
w.clearInterval( run );
} );
} else if( w.attachEvent ){
w.attachEvent( "onload", function(){
rp.poly();
w.clearInterval( run );
} );
}
}
// commonjs
if( typeof exports !== "undefined" ){
exports.loadCSS = loadCSS;
}
else {
w.loadCSS = loadCSS;
}
}( typeof global !== "undefined" ? global : this ) );