{"id":1859,"date":"2021-01-21T10:54:55","date_gmt":"2021-01-21T10:54:55","guid":{"rendered":"https:\/\/mzansinewslive.co.za\/wp\/?p=1859"},"modified":"2021-01-21T10:54:58","modified_gmt":"2021-01-21T10:54:58","slug":"fake-south-african-id-number-generator","status":"publish","type":"post","link":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/","title":{"rendered":"(Fake) South African ID number generator"},"content":{"rendered":"\n<script async=\"\" src=\"https:\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script>\n<!-- Displays -->\n<ins class=\"adsbygoogle\" style=\"display:block\" data-ad-client=\"ca-pub-6634310512893466\" data-ad-slot=\"9612053602\" data-ad-format=\"auto\" data-full-width-responsive=\"true\"><\/ins>\n<script>\n     (adsbygoogle = window.adsbygoogle || []).push({});\n<\/script>\n\n\n\n<p><\/p>\n\n\n\n<!DOCTYPE html>\n<html>\n<head>\n  <meta charset=\"utf-8\">\n  <meta name=\"viewport\" content=\"width=device-width\">\n  <title>Generate SA ID Numbers<\/title>\n\n  <script src=\"https:\/\/code.jquery.com\/jquery.min.js\"><\/script>\n  <link href=\"https:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.6\/css\/bootstrap.min.css\" rel=\"stylesheet\" type=\"text\/css\" \/>\n  <script src=\"https:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.3.6\/js\/bootstrap.min.js\"><\/script>\n\n  <script>\n\n    \/\/ calculates the Lohn digit, see https:\/\/en.wikipedia.org\/wiki\/Luhn_algorithm\n    function calculateCheckDigit(digitsAsString) {\n      \/\/const digits = ('' + dob + gender + sequence + citizenship + eight).split('').map(d => Number(d))\n      const digits = digitsAsString.replace(\/\\D\/g, '').split('').map(d => Number(d))\n      const checkSum = digits.reverse().map((d, ix) => {\n        if (ix % 2 === 0) {\n          d *= 2\n          if (d > 9) {\n            d -= 9\n          }\n        }\n        return d\n      }).reduce((memo, d) => memo += d, 0)\n      return checkSum * 9 % 10\n    }\n\n    \/\/ show a valid ID number generated using the values in the form\n    function showIdNumber() {\n\n      const form = document.forms.f1\n\n      const values = [\n        form.year, form.month, form.day,\n        form.gender,\n        { value: form.sequence.value || '896' \/* sequence *\/ },\n        { value: form.cship.value || '0' \/* citizenship *\/ },\n        { value: '8' \/* a *\/ },\n      ]\n\n      withoutCheckDigit = values.map(e => e.value).join('')\n      const idNumber = withoutCheckDigit + calculateCheckDigit(withoutCheckDigit)\n\n      document.getElementById('result').innerHTML = `<p>${ idNumber }<\/p>`\n\n    }\n\n    function showExpertOptions() {\n      $('#showExpertOptions').toggle()\n      $('#expertOptions').toggle()\n    }\n\n  <\/script>\n<\/head>\n\n<body>\n\n  <div class=\"container\">\n\n    <h3>Generate (Fake) South-African ID Numbers<\/h1>\n\n    <div class=\"row\">\n      <div class=\"col-xs-12\">\n\n      <form id=\"f1\" name=\"f1\" onsubmit=\"showIdNumber(); return false\">\n\n        <div class=\"input-group col-xs-8\">\n          <label for=\"year\">Year of Birth<\/label>\n          <select class=\"form-control\" id=\"year\" name=\"year\"><\/select>\n        <\/div>\n        <div class=\"input-group col-xs-8\">\n          <label for=\"month\">Month of Birth<\/label>\n          <select class=\"form-control\" id=\"month\" name=\"month\"><\/select>\n        <\/div>\n        <div class=\"input-group col-xs-8\">\n          <label for=\"day\">Day of Birth<\/label>\n          <select class=\"form-control\" id=\"day\" name=\"day\"><\/select>\n        <\/div>\n        <div class=\"input-group col-xs-8\">\n          <input type=\"radio\" name=\"gender\" id=\"female\" value=\"4\" checked=\"checked\" \/>\n          <label for=\"female\">Female<\/label>\n          <br\/>\n          <input type=\"radio\" name=\"gender\" id=\"male\" value=\"5\" \/>\n          <label for=\"male\">Male<\/label>\n        <\/div>\n\n        <div id=\"showExpertOptions\">\n          <a href=\"#\" onclick=\"showExpertOptions()\">Show expert options<\/a>\n        <\/div>\n        <div style=\"display: none;\" id=\"expertOptions\">\n          <div class=\"input-group col-xs-8\">\n            <label for=\"sequence\">Sequence<\/label>\n            <select class=\"form-control\" id=\"sequence\" name=\"sequence\"><\/select>\n          <\/div>\n          <div class=\"input-group col-xs-8\">\n            <input type=\"radio\" name=\"cship\" id=\"citizen\" value=\"0\" checked=\"checked\" \/>\n            <label for=\"citizen\">Citizen<\/label>\n            <br\/>\n            <input type=\"radio\" name=\"cship\" id=\"resident\" value=\"1\" \/>\n            <label for=\"resident\">Resident<\/label>\n          <\/div>\n        <\/div>\n\n        <input class=\"btn btn-primary\" type=\"submit\" \/>\n\n      <\/form>\n\n      <h3>Result<\/h3>\n\n      <div id=\"result\">Hint: submit the form to get an ID number.<\/div>\n\n        <h3>More Information<\/h3>\n\n        <p>See <a href=\"https:\/\/en.wikipedia.org\/wiki\/National_identification_number#South_Africa\">Wikipedia<\/a> or\n          <a href=\"http:\/\/knowles.co.za\/generating-south-african-id-numbers\/\">this article<\/a>.\n        <\/p>\n\n    <\/div>\n  <\/div>\n\n  <script>\n\n    \/\/ add 'option' elements to the 'select' elements (for year, month, day)\n    function addOptions(id, from, to, toLabel, toValue, defaultValue) {\n      const selectElement = document.getElementById(id)\n      const values = []\n      for (let i = 0; i <= to - from; i++) values[i] = i + from\n      const options = values\n      .map(v => ((v < 10 ? '0' : '') + v))\n      .map(v => {\n        const value = toValue ? toValue(v) : v\n        const isDefault = defaultValue && defaultValue === value\n        const label = toLabel ? toLabel(v) : v\n        return `<option value=${ value } ${ isDefault ? 'selected=\"selected\"' : '' }>${ label }<\/option>`\n      })\n      selectElement.innerHTML = options.join()\n    }\n\n    const year = new Date().getYear() \n\n    const pad = function(n) {\n      const str = \"\" + n\n      const pad = \"000\"\n      return pad.substring(0, pad.length - str.length) + str\n    }\n\n    addOptions('year', 20, 99, v => `${v} (~${year - Number(v)} years old)`)\n    addOptions('month', 1, 12)\n    addOptions('day', 1, 31)\n    addOptions('sequence', 0, 999, v => pad(v), pad, '800')\n\n  <\/script>\n\n<\/body>\n<\/html>\n\n\n\n<script async=\"\" src=\"https:\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js\"><\/script>\n<!-- Displays -->\n<ins class=\"adsbygoogle\" style=\"display:block\" data-ad-client=\"ca-pub-6634310512893466\" data-ad-slot=\"9612053602\" data-ad-format=\"auto\" data-full-width-responsive=\"true\"><\/ins>\n<script>\n     (adsbygoogle = window.adsbygoogle || []).push({});\n<\/script>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Generate SA ID Numbers Generate (Fake) South-African ID Numbers Year of Birth Month of Birth Day of Birth<\/p>\n","protected":false},"author":1,"featured_media":1855,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[219],"tags":[315],"class_list":["post-1859","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-how-to","tag-id-number-generator"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>(Fake) South African ID number generator - MzansiNewsLive<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"(Fake) South African ID number generator - MzansiNewsLive\" \/>\n<meta property=\"og:description\" content=\"Generate SA ID Numbers Generate (Fake) South-African ID Numbers Year of Birth Month of Birth Day of Birth\" \/>\n<meta property=\"og:url\" content=\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/\" \/>\n<meta property=\"og:site_name\" content=\"MzansiNewsLive\" \/>\n<meta property=\"article:published_time\" content=\"2021-01-21T10:54:55+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-01-21T10:54:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/mzansinewslive.co.za\/wp\/wp-content\/uploads\/2021\/01\/SA-ID.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"700\" \/>\n\t<meta property=\"og:image:height\" content=\"466\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/\",\"url\":\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/\",\"name\":\"(Fake) South African ID number generator - MzansiNewsLive\",\"isPartOf\":{\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/mzansinewslive.co.za\/wp\/wp-content\/uploads\/2021\/01\/SA-ID.jpg\",\"datePublished\":\"2021-01-21T10:54:55+00:00\",\"dateModified\":\"2021-01-21T10:54:58+00:00\",\"author\":{\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/#\/schema\/person\/328a857931b910052501850005942b6e\"},\"breadcrumb\":{\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#primaryimage\",\"url\":\"https:\/\/mzansinewslive.co.za\/wp\/wp-content\/uploads\/2021\/01\/SA-ID.jpg\",\"contentUrl\":\"https:\/\/mzansinewslive.co.za\/wp\/wp-content\/uploads\/2021\/01\/SA-ID.jpg\",\"width\":700,\"height\":466},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/mzansinewslive.co.za\/wp\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"(Fake) South African ID number generator\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/#website\",\"url\":\"https:\/\/mzansinewslive.co.za\/wp\/\",\"name\":\"MzansiNewsLive\",\"description\":\"Bringing you the latest Mzansi news and updates\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/mzansinewslive.co.za\/wp\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/#\/schema\/person\/328a857931b910052501850005942b6e\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/mzansinewslive.co.za\/wp\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/78d5701535567abb20cfff217c5fecb9?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/78d5701535567abb20cfff217c5fecb9?s=96&d=mm&r=g\",\"caption\":\"admin\"},\"url\":\"https:\/\/mzansinewslive.co.za\/wp\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"(Fake) South African ID number generator - MzansiNewsLive","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/","og_locale":"en_US","og_type":"article","og_title":"(Fake) South African ID number generator - MzansiNewsLive","og_description":"Generate SA ID Numbers Generate (Fake) South-African ID Numbers Year of Birth Month of Birth Day of Birth","og_url":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/","og_site_name":"MzansiNewsLive","article_published_time":"2021-01-21T10:54:55+00:00","article_modified_time":"2021-01-21T10:54:58+00:00","og_image":[{"width":700,"height":466,"url":"https:\/\/mzansinewslive.co.za\/wp\/wp-content\/uploads\/2021\/01\/SA-ID.jpg","type":"image\/jpeg"}],"author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/","url":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/","name":"(Fake) South African ID number generator - MzansiNewsLive","isPartOf":{"@id":"https:\/\/mzansinewslive.co.za\/wp\/#website"},"primaryImageOfPage":{"@id":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#primaryimage"},"image":{"@id":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#primaryimage"},"thumbnailUrl":"https:\/\/mzansinewslive.co.za\/wp\/wp-content\/uploads\/2021\/01\/SA-ID.jpg","datePublished":"2021-01-21T10:54:55+00:00","dateModified":"2021-01-21T10:54:58+00:00","author":{"@id":"https:\/\/mzansinewslive.co.za\/wp\/#\/schema\/person\/328a857931b910052501850005942b6e"},"breadcrumb":{"@id":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#primaryimage","url":"https:\/\/mzansinewslive.co.za\/wp\/wp-content\/uploads\/2021\/01\/SA-ID.jpg","contentUrl":"https:\/\/mzansinewslive.co.za\/wp\/wp-content\/uploads\/2021\/01\/SA-ID.jpg","width":700,"height":466},{"@type":"BreadcrumbList","@id":"https:\/\/mzansinewslive.co.za\/wp\/fake-south-african-id-number-generator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/mzansinewslive.co.za\/wp\/"},{"@type":"ListItem","position":2,"name":"(Fake) South African ID number generator"}]},{"@type":"WebSite","@id":"https:\/\/mzansinewslive.co.za\/wp\/#website","url":"https:\/\/mzansinewslive.co.za\/wp\/","name":"MzansiNewsLive","description":"Bringing you the latest Mzansi news and updates","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/mzansinewslive.co.za\/wp\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/mzansinewslive.co.za\/wp\/#\/schema\/person\/328a857931b910052501850005942b6e","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/mzansinewslive.co.za\/wp\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/78d5701535567abb20cfff217c5fecb9?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/78d5701535567abb20cfff217c5fecb9?s=96&d=mm&r=g","caption":"admin"},"url":"https:\/\/mzansinewslive.co.za\/wp\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/posts\/1859","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/comments?post=1859"}],"version-history":[{"count":2,"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/posts\/1859\/revisions"}],"predecessor-version":[{"id":1861,"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/posts\/1859\/revisions\/1861"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/media\/1855"}],"wp:attachment":[{"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/media?parent=1859"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/categories?post=1859"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mzansinewslive.co.za\/wp\/wp-json\/wp\/v2\/tags?post=1859"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}