Wednesday, 19 January 2022

 <iframe allowtransparency="true" frameborder="0" height="200" id="216ad6" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=speed-test&amp;h=0&amp;r=216ad6" width="1100"></iframe><script type="text/javascript"> (function(id) { var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1; window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) { if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10); if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h; }, false); })("216ad6"); </script>

<br />
<div><br /></div><div><div>Website speed test online tool can be a very useful way to test how fast a website loads. There are many websites that offer this service but our website speed testing tool is much effective and gets correct results, with our free website speed test tool it is a good idea to check the speed of any website before you visit it, if a website is slow, it can lead to frustration and even cause you to leave the site before you have had a chance to see what it has to offer.</div><div><br /></div><div>Website speed test online is useful if you are hosting your own website, or want to test how fast a website is that you are visiting. Different websites have different speeds, and it is important that your website loads quickly so that visitors do not get frustrated and leave.</div><div><br /></div><div>A website speed test is an online tool used to determine the speed at which a website loads on a computer. These tests are usually conducted with the goal of determining the speed at which a site will load for visitors, or determining if an online business is likely to have high bounce rates due to slow loading speeds. Website speed tests are also commonly employed by web developers as a way of determining if new coding changes have improved the loading speeds of their sites.</div><div><br /></div><div>Website speed is key to a successful site and can make or break whether or not users stay on your site. A slow loading website is frustrating and can cause people to leave before they even get what they’re looking for. Fortunately, there are many tools online that allow you to test the speed of your website and identify any issues that may be slowing it down.</div></div><div><br /></div>

 iframe allowtransparency="true" frameborder="0" height="200" id="d28881" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=submit-sitemap&amp;h=0&amp;r=d28881" width="1100"></iframe><script type="text/javascript"> (function(id) { var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1; window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) { if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10); if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h; }, false); })("d28881"); </script>

<br /><div>Sitemap Submitter is a free tool that submits your sitemap to the major search engines, so they can index it. The search engines include Google, Yahoo, Bing, and Yandex. Sitemap Submitter will also check your sitemap for errors! This tool is very simple to use.</div><div><br /></div><div>A sitemap is a way for webmasters to communicate to search engines the hierarchy of their website. Sitemaps are also intelligent because they can be submitted automatically, which means that they do not need to be submitted manually. This can save webmasters a lot of time, and it is one of the reasons why sitemaps are popular with many webmasters.</div><div><br /></div><div>A sitemap is a list of web pages on a website, and a sitemap submitter tool is an online tool that can be used to submit a sitemap to search engines. The sitemap submitter tool is available free of charge.</div><div><br /></div>

 <iframe width="1100" height="200" allowtransparency="true" frameborder="0" id="6bf14c" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=robots-txt&h=0&r=6bf14c"></iframe>

<script type="text/javascript">
  (function(id) {
    var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1;
    window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) {
      if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10);
      if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h;
    }, false);
  })("6bf14c");
</script>

<br /><br /><div><div>Robots.txt is a file that can be used to control search engine crawlers and web robots. This file tells crawlers which parts of the website they are allowed to access and which they are not allowed to access. For example, you can use Robots.txt to block web crawlers from accessing private pages on your website that you do not want to be indexed by search engines.</div><div><br /></div><div>Robots.txt is a file that can be placed in the root directory of a website to help control how robots to crawl and index web pages. It is a text file with the file name "robots.txt" and it should be uploaded in the site root directory, but not within a folder.</div></div><div><br /></div><div><div>The Robots.txt Generator Tool is an online tool that allows you to easily create robots.txt files for your websites. The Robots.txt Generator tool provides simple instructions and also has the option to be used with Google Webmasters, which makes it easier to implement on websites that are already indexed in Google.</div></div><div><br /></div>

 <iframe width="1100" height="200" allowtransparency="true" frameborder="0" id="bbb828" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=extract-meta-tags&h=0&r=bbb828"></iframe>

<script type="text/javascript">
  (function(id) {
    var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1;
    window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) {
      if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10);
      if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h;
    }, false);
  })("bbb828");
</script>

<br /><br /><div><div><b>Meta Tags Extracting Tool is a free online&nbsp;Meta Tags Extracting Tool that allows you to extract&nbsp;Meta Tags.</b></div><div><br /></div><div>Meta tags are HTML code snippets embedded in the source code of a website that define the title, description, keywords, and other metadata of the site. They are used by search engines to categorize and rank websites. Meta tags are one of the most important elements of the SEO (search engine optimization) process.</div><div><br /></div><div>Meta tags are used by search engines to help determine what a webpage is about. Meta tags are typically placed in the &lt;head&gt; section of a webpage, and are hidden from the user. However, search engines will use meta tags to index webpages, which can help determine how relevant a webpage will be for a particular search term. Meta tags have become less important in recent years with the rise of social media, but they still have an important place in SEO strategies today.</div></div><div><br /></div>

 <iframe allowtransparency="true" frameborder="0" height="200" id="814db7" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=sitemap&amp;h=0&amp;r=814db7" width="1100"></iframe><script type="text/javascript"> (function(id) { var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1; window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) { if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10); if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h; }, false); })("814db7"); </script>

<br /><br /><div><div>The sitemap status checker tool is a program that determines whether or not a website’s XML sitemap is valid and functioning. The tool scans the website and returns a list of URLs that are either missing from the sitemap or which are not linked to from anywhere on the site itself.</div><div><br /></div><div>The sitemap status checker tool is a useful tool for checking the status of your sitemap. It's very easy to use and will tell you if your sitemap is valid, invalid, or if it has errors in it.</div><div><br /></div><div>Search engines are online tools that index the internet and allow users to find information on the web. They are an integral part of modern life and are used by people all over the world to find everything from recipes to news stories. The most well-known search engine is Google, which claims to have indexed more than 130 billion web pages.</div></div><div><br /></div>

 <iframe width="1100" height="200" allowtransparency="true" frameborder="0" id="9f302b" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=headers&h=0&r=9f302b"></iframe>

<script type="text/javascript">
  (function(id) {
    var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1;
    window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) {
      if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10);
      if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h;
    }, false);
  })("9f302b");
</script>

 <iframe width="1100" height="200" allowtransparency="true" frameborder="0" id="0b4843" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=link-analysis&h=0&r=0b4843"></iframe>

<script type="text/javascript">
  (function(id) {
    var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1;
    window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) {
      if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10);
      if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h;
    }, false);
  })("0b4843");
</script>

 <iframe width="1100" height="200" allowtransparency="true" frameborder="0" id="46fcb2" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=poor-backlinks&h=0&r=46fcb2"></iframe>

<script type="text/javascript">
  (function(id) {
    var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1;
    window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) {
      if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10);
      if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h;
    }, false);
  })("46fcb2");
</script>

 <iframe width="1100" height="200" allowtransparency="true" frameborder="0" id="cfeb6c" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=new-backlinks&h=0&r=cfeb6c"></iframe>

<script type="text/javascript">
  (function(id) {
    var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1;
    window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) {
      if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10);
      if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h;
    }, false);
  })("cfeb6c");
</script>

 <iframe width="1100" height="200" allowtransparency="true" frameborder="0" id="c69b6b" scrolling="no" src="https://bailey.sh/seostudio/demo/standard/embed.php?id=high-quality-backlinks&h=0&r=c69b6b"></iframe>

<script type="text/javascript">
  (function(id) {
    var eventMethod = (window.addEventListener ? "addEventListener" : "attachEvent"), lh = -1;
    window[eventMethod](eventMethod == "attachEvent" ? "onmessage" : "message", function(e) {
      if (e.data.indexOf(id + ':') != 0) return; var h = parseInt(e.data.substring(id.length + 1), 10);
      if (lh != h) document.getElementById(id).style.height = h + 'px'; lh = h;
    }, false);
  })("c69b6b");
</script>

 <!DOCTYPE html>

<html>
<head>
<title>Page Title</title>
<link rel='stylesheet' href='https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css'>
<link rel='stylesheet' href='https://fonts.googleapis.com/css?family=Kanit:300,500,700'>
<style>
@charset "UTF-8";
body {
  min-height: 100vh;
  padding-top: 100px;
  background: linear-gradient(20deg, #b2085a 0%, #52149e 51%, #089bd1 95%);
  font-family: "Kanit", sans-serif;
  font-weight: 300;
}

.instructions {
  font-size: 0.9rem;
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 500;
  margin: 0;
}

.title-wrapper {
  background: #af5095;
  padding: 2px 10px;
  color: white;
}

h1 {
  font-size: 1.1rem;
}

.inner-wrapper {
  padding: 20px;
}

.wrapper {
  overflow: hidden;
  margin: auto;
  width: 90%;
  max-width: 380px;
  background: white;
  border-radius: 5px;
  box-shadow: 3px 3px 2px rgba(0, 0, 0, 0.4);
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-flow: column wrap;
}
.wrapper .password-wrapper {
  position: relative;
  border: 2px solid lightgray;
  color: gray;
  padding: 2px 2px 2px 8px;
  border-radius: 5px;
  text-align: left;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
}
.wrapper .password-wrapper .alert {
  position: absolute;
  padding: 0 5px;
  border-radius: 2px;
  width: 21ch;
  height: 89%;
  left: 2px;
  top: -100%;
  width: 96%;
  text-align: center;
  color: #333;
  opacity: 0;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.wrapper .password-wrapper .alert.success {
  background: rgba(88, 216, 191, 0.9);
  opacity: 1;
}
.wrapper .password-wrapper .alert.fail {
  background: rgba(188, 90, 118, 0.9);
  color: white;
  opacity: 1;
}
.wrapper .password-wrapper .copy {
  height: 100%;
  width: 50px;
  background: #af5095;
  border: 0;
  color: white;
  border-radius: 2px;
  padding: 8px;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.wrapper .password-wrapper .copy:hover {
  background: #b762a0;
}
.wrapper .controls {
  text-align: left;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-flow: column wrap;
}
.wrapper .controls .control {
  padding: 3px;
  border-bottom: 1px solid lightgray;
  width: 100%;
  margin: 2px;
}
.wrapper .controls .generate {
  width: 100%;
  border: 0;
  color: white;
  background: #af5095;
  border-radius: 3px;
  height: 25px;
  margin-top: 10px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.wrapper .controls .generate:hover {
  background: #b762a0;
}

#length-box {
  width: 100%;
}
#length-box input {
  width: 100%;
}

input[type="checkbox"] {
  visibility: hidden;
}

label.check-label {
  position: relative;
}
label.check-label:before {
  content: "";
  height: 1rem;
  width: 1rem;
  left: -24px;
  top: 0;
  border: 0.5px solid lightgray;
  position: absolute;
  background: transparent;
  -webkit-transition: all 0.3s cubic-bezier(0, 0.82, 1, 1.81);
  transition: all 0.3s cubic-bezier(0, 0.82, 1, 1.81);
}

input[type="checkbox"]:checked + label.check-label:before {
  content: "?";
  font-family: "FontAwesome";
  font-size: 0.8rem;
  color: #58d8bf;
  text-align: center;
  background: #d4f5ef;
  -webkit-transition: all 0.3s cubic-bezier(0, 0.82, 1, 1.81);
  transition: all 0.3s cubic-bezier(0, 0.82, 1, 1.81);
}
</style>
</head>
<body>
<div class="wrapper">
  <div class="title-wrapper">
    <h1 class="title">Password Generator</h1>
  </div>
  <div class="inner-wrapper">
    <div class="password-wrapper">
    <div class="password-here" id="password-here">
    ----
  </div>
    <button id="copy" class="copy">Copy</button>
    <div class="alert" id="alert"><span class="message" id="message"></div>
  </div>
  <p class="instructions">Select your options and click the "generate" button. Your passord will appear above.</p>
  <div class="controls">
    <div class="control length" id="length-box" >
      <label for="length">Password Length</label>
      <input type="range" id='length' min="4" max="20"list="tickmarks">
      <datalist id="tickmarks">
        <option value="4" label="4">
        <option value="5">
        <option value="6">
        <option value="7">
        <option value="8">        
        <option value="9">
        <option value="10">
        <option value="11">
        <option value="12" label="12">
        <option value="13">
        <option value="14">
        <option value="15">
        <option value="16">
        <option value="17">
        <option value="18">
        <option value="19">
        <option value="20">
      </datalist>
    </div>
    <div class="control">
      <input type="checkbox" id="lowercase">
      <label class="check-label" for="lowercase"><span class="checkbox">Use lowercase letters</span></label>
    </div>
    <div class="control">
      <input type="checkbox" id="uppercase">
      <label class="check-label" for="uppercase"><span class="checkbox">Use uppercase letters</span></label>
    </div>
    <div class="control">
      <input type="checkbox" id="numbers">
      <label class="check-label" for="numbers"><span class="checkbox">Use numbers</span></label>
    </div>
    <div class="control">
      <input type="checkbox" id="punctuation">
      <label class="check-label" for="punctuation"><span class="checkbox">Use special characters</span></label>
    </div>
    <button class="generate" id="generate">Generate!</button>
  </div>
  </div>
</div>

<script src='https://cdn.jsdelivr.net/npm/clipboard@1/dist/clipboard.min.js'></script>
<script>
var clipboard = new Clipboard('.copy');
var lowercase = "abcdefghijklmnopqrstuvwxyz",
  uppercase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
  numbers = "0123456789",
  punctuation = "!@#$%^&*()_+~`|}{[]:;?><,./-=",
  lowercaseInput = document.getElementById("lowercase"),
  uppercaseInput = document.getElementById("uppercase"),
  punctuationInput = document.getElementById("punctuation"),
  numbersInput = document.getElementById("numbers"),
  lengthInput = document.getElementById("length"),
  passwordFeild = document.getElementById("password-here"),
  generateButton = document.getElementById("generate"),
  copyButton = document.getElementById("copy"),
  plength,
  userPassword,
  passwordCharSet;

function generate() {
  userPassword = "";
  passwordCharSet = "";
  if (lowercaseInput.checked) {
    passwordCharSet += lowercase;
  }
  if (uppercaseInput.checked) {
    passwordCharSet += uppercase;
  }
  if (punctuationInput.checked) {
    passwordCharSet += punctuation;
  }
  if (numbersInput.checked) {
    passwordCharSet += numbers;
  }
  plength = Number(lengthInput.value);

  for (let i = 0; i < plength; i++) {
    userPassword += passwordCharSet.charAt(
      Math.floor(Math.random() * passwordCharSet.length)
    );
  }
  if (userPassword == "") {
    let alertbox = document.getElementById('alert');
    alertbox.innerHTML = "Please select an option before generating"
    alertbox.classList.add('fail');
    setTimeout(function(){ 
      alertbox.classList.remove('fail');
    }, 3000);
  } else {
    passwordFeild.innerHTML = userPassword;
  }
  copyButton.setAttribute("data-clipboard-text", userPassword)
}
generateButton.addEventListener("click", generate);

clipboard.on('success', function(e) {
    console.info('Action:', e.action);
    console.info('Text:', e.text);
    console.info('Trigger:', e.trigger);
    let alertbox = document.getElementById('alert');
    alertbox.innerHTML = "Copied!"
    alertbox.classList.add('success');
    setTimeout(function(){ 
      alertbox.classList.remove('success');
    }, 3000);
    
    e.clearSelection();
});

clipboard.on('error', function(e) {
    console.error('Action:', e.action);
    console.error('Trigger:', e.trigger);
  let alertbox = document.getElementById('alert');
    alertbox.innerHTML = "Try select the text to copy"
    alertbox.classList.add('fail');
    setTimeout(function(){ 
      alertbox.classList.remove('fail');
    }, 3000);
});
</script>
</body>
</html>

  <iframe allowtransparency="true" frameborder="0" height="200" id="216ad6" scrolling="no...