{"id":263,"date":"2020-09-03T17:11:24","date_gmt":"2020-09-03T17:11:24","guid":{"rendered":"https:\/\/drammentrappevask.no\/?page_id=263"},"modified":"2020-10-01T15:39:41","modified_gmt":"2020-10-01T15:39:41","slug":"tilbuds-kalkulator","status":"publish","type":"page","link":"https:\/\/drammentrappevask.no\/?page_id=263","title":{"rendered":"Tilbudskalkulator"},"content":{"rendered":"\n<p><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><\/code><\/pre>\n\n\n\n<meta http-equiv=\"Content-Type\" content=\"text\/html; charset=UTF-8\">\n\n\n\n<script>\n  function ansatt\n    ( timelonn\n    , paaslag\n    , timespan\n    , kmeter\n    )\n  {\n    let res =\n      { timelonn:   timelonn\n      , paaslag:    paaslag\n      , timespan:   timespan\n      , use_kmeter: kmeter != 0\n      , kmeter:     kmeter\n      };\n\n    return res;\n  }\n\n  const ansatte =\n    { \"Renholder\":\n        ansatt\n          ( timelonn = 201\n          , paaslag  = 0.5\n          , timespan = 4\n          , kmeter   = 25\n          )\n\n    , \"Flyttevask\":\n        ansatt\n          ( timelonn = 310\n          , paaslag  = 0.6\n          , timespan = 1\n          , kmeter   = 5\n          )\n\n    , \"Vaktmester\":\n        ansatt\n          ( timelonn = 231\n          , paaslag  = 0.5\n          , timespan = 4\n          , kmeter   = 0\n          )\n\n    , \"Ambulerende vaktmester\":\n        ansatt\n          ( timelonn = 231\n          , paaslag  = 0.6\n          , timespan = 1\n          , kmeter   = 0\n          )\n\n    , \"Vikar renholder\":\n        ansatt\n          ( timelonn = 201\n          , paaslag  = 1.0\n          , timespan = 1\n          , kmeter   = 25\n          )\n\n    , \"Vikar vaktmester\":\n        ansatt\n          ( timelonn = 231\n          , paaslag  = 1.0\n          , timespan = 1\n          , kmeter   = 0\n          )\n    };\n\n  const prosent_moms = 0.25;\n  const slem_runding = 100;\n\n  function calculatePrice (timer, ansatt)\n  {\n    let timelonn = ansatt.timelonn;\n    let paaslag  = ansatt.paaslag;\n    let timespan = ansatt.timespan;\n\n    let price_month = timelonn * timer * timespan;\n    let avangs      = price_month * paaslag;\n    let price       = price_month + avangs;\n\n    return Math.ceil(price);\n  }\n<\/script>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"header\"><\/h1>\n\n\n\n<div id=\"boxboxbox\">\n  <div id=\"boxbox\">\n    <span class=\"text\">Kategori<\/span>\n\n    <select class=\"box\" id=\"kategori\">\n      <option value=\"Renholder\">Renholder<\/option>\n      <option value=\"Flyttevask\">Flyttevask<\/option>\n      <option value=\"Vaktmester\">Vaktmester<\/option>\n      <option value=\"Ambulerende vaktmester\">Ambulerende vaktmester<\/option>\n      <option value=\"Vikar renholder\">Vikar renholder<\/option>\n      <option value=\"Vikar vaktmester\">Vikar vaktmester<\/option>\n    <\/select>\n\n    <br>\n\n    <span class=\"text\">Timer\/uke<\/span>\n    <input class=\"box\" id=\"timer\" type=\"number\" min=\"0\" value=\"0\">\n\n    <br>\n\n    <div id=\"kmeter_box\">\n      <span class=\"text\">Kvadratmeter\/uke<\/span>\n      <input class=\"box\" id=\"kmeter\" type=\"number\" min=\"0\" value=\"0\">\n    <\/div>\n  <\/div>\n<\/div>\n\n\n\n<div id=\"price_box\">\n  <p id=\"price_text\">M\u00e5nedspris<\/p>\n  <span id=\"svar\" class=\"big-text\">0<\/span> kr\n  <p><p>+<\/p>\n  <p>Moms<\/p>\n  <span id=\"moms\" class=\"big-text\">0<\/span> kr\n <p><p><p>=<\/p>\n  <p>Total<\/p>\n  <span id=\"total\" class=\"big-text\">0<\/span> kr\n<\/div>\n\n\n\n<style type=\"text\/css\" media=\"all\">\n\n.hidden\n{\n  visibility: hidden;\n  \/* display: none; *\/\n}\n\n.text\n{\n  display: inline-block;\n  min-width: 120px;\n}\n\n#header\n{\n  text-align: center;\n  \/* text-transform: uppercase; *\/\n  font-size: 30px;\n  \/* font-family: monospace; *\/\n}\n#price_box\n{\n  display: block;\n  text-align: center;\n  font-size: 18px;\n  \/* line-height: 1.6em; *\/\n  line-height: 0.1em;\n}\n.big-text\n{\n  font-size: 24px;\n  font-weight: 500;\n  font-family: monospace;\n}\nbody\n{\n  background: lightblue;\n}\n.box\n{\n  width: 200px;\n}\n#boxbox\n{\n  padding: 20px;\n  line-height: 1.5em;\n  padding-bottom: 30px;\n  padding-top: 0.1px;\n}\n#boxboxbox\n{\n  display: flex;\n  justify-content: center;\n}\n\n<\/style>\n\n\n\n<script>\n\n  let elem_kategori\n    = document.querySelector ('#kategori');\n\n  let elem_timer\n    = document.querySelector ('#timer');\n\n  let elem_kmeter\n    = document.querySelector ('#kmeter');\n\n  let elem_price_text\n    = document.querySelector ('#price_text');\n\n  let elem_svar\n    = document.querySelector ('#svar');\n\n  let elem_kmeter_box\n    = document.querySelector ('#kmeter_box');\n\n  let elem_moms\n    = document.querySelector ('#moms');\n\n  let elem_total\n    = document.querySelector ('#total');\n\n  \/\/ ---------\n\n  function updatePrice (price)\n  {\n    let moms       = Math.ceil(price * prosent_moms);\n    let total      = price + moms;\n    let evil_total = Math.ceil(total \/ slem_runding)*slem_runding;\n\n    elem_svar.innerText  = price;\n    elem_moms.innerText  = moms;\n    elem_total.innerText = evil_total;\n\n    let navn     = elem_kategori.selectedOptions[0].value;\n    let ansatt   = ansatte[navn];\n    let timespan = ansatt.timespan;\n\n    elem_price_text.innerText\n      = timespan == 4 ? \"M\u00e5nedspris\"\n      : timespan == 1 ? \"Tilbudspris\"\n      : \"Pris\";\n  }\n\n  function updateElements ()\n  {\n    let timer  = elem_timer.value;\n    let navn   = elem_kategori.selectedOptions[0].value;\n    let ansatt = ansatte[navn];\n\n    let price = calculatePrice (timer, ansatt);\n\n    updatePrice (price);\n\n    let use_kmeter = ansatt.use_kmeter;\n    let kmeter     = ansatt.kmeter;\n\n    if (use_kmeter)\n    {\n      elem_kmeter_box.classList.remove ('hidden');\n    }\n    else\n    {\n      elem_kmeter_box.classList.add ('hidden');\n    }\n\n    elem_kmeter.value = timer * kmeter;\n  };\n\n  function updateKmeter ()\n  {\n    let navn   = elem_kategori.selectedOptions[0].value;\n    let ansatt = ansatte[navn];\n\n    let kmeter = elem_kmeter.value;\n    let timer  = kmeter \/ ansatt.kmeter \n\n    elem_timer.value = Math.ceil(timer);\n\n    updatePrice (calculatePrice (timer, ansatt));\n  };\n\n  elem_timer .onchange = updateElements;\n  elem_kategori  .onchange = updateElements;\n  elem_kmeter.onchange = updateKmeter;\n\n  elem_timer .onkeyup = updateElements;\n  elem_kategori  .onkeyup = updateElements;\n  elem_kmeter.onkeyup = updateKmeter;\n\n  \/\/ ove@dtvas.no\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Kategori RenholderFlyttevaskVaktmesterAmbulerende vaktmesterVikar renholderVikar vaktmester Timer\/uke Kvadratmeter\/uke M\u00e5nedspris 0 kr + Moms 0 kr = Total 0 kr<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"class_list":["post-263","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/drammentrappevask.no\/index.php?rest_route=\/wp\/v2\/pages\/263","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/drammentrappevask.no\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/drammentrappevask.no\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/drammentrappevask.no\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/drammentrappevask.no\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=263"}],"version-history":[{"count":17,"href":"https:\/\/drammentrappevask.no\/index.php?rest_route=\/wp\/v2\/pages\/263\/revisions"}],"predecessor-version":[{"id":346,"href":"https:\/\/drammentrappevask.no\/index.php?rest_route=\/wp\/v2\/pages\/263\/revisions\/346"}],"wp:attachment":[{"href":"https:\/\/drammentrappevask.no\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=263"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}