<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title>MaDluhy.cz - Centrální evidene exekucí</title>
  <meta name="description" content="Seznam exekucí zadané osoby. Pro vyhledání osoby zadejte její jméno:">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta name="description" content="Centrální evidnce exekucí ČR - Seznam exekucí - Ověrení exekucí zadané osoby">
  <meta name="google-site-verification" content="BKI-cxaVz5on2texsmFUMGU_Bp5tAl1olNHBkeCQvhg" />
  <title>CEE ČR - Centralní evidence exekucí</title>
  <link href='https://fonts.googleapis.com/css?family=Roboto:300,400,500,700|Material+Icons' rel="stylesheet" type="text/css">
  <link href="https://unpkg.com/vuetify@1.5.16/dist/vuetify.min.css" rel="stylesheet" type="text/css"></link>
  <link rel="icon" type="image/png" href="/favicon.ico">
  <script async src="https://www.googletagmanager.com/gtag/js?id=UA-32911508-4"></script>
  <script>
    window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());
    gtag('config', 'UA-32911508-4');
  </script>
  <!--script type="text/javascript">
    window.smartlook||(function(d) {
    var o=smartlook=function(){ o.api.push(arguments)},h=d.getElementsByTagName('head')[0];
    var c=d.createElement('script');o.api=new Array();c.async=true;c.type='text/javascript';
    c.charset='utf-8';c.src='https://rec.smartlook.com/recorder.js';h.appendChild(c);
    })(document);
    smartlook('init', 'bc0f9030b3a73d25905d827ac13519a3de8e7b33');
  </script-->
</head>
<body>
 <v-app id="app"><l-cresk /></v-app>

<template type="text/x-template" id="l-cresk">
div
 v-toolbar(dark tabs)
  v-btn(flat icon href="/")
   v-img(src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAACXLAAAlywEaR2RmAAAAB3RJTUUH3gkCFQEOp7cA2AAAAwBJREFUeNrtm81LVFEYxp938iO0siLJBMOyhS0UMooIbRF9bEpyF9G+oFq1k4j+gBZltKhdBLVpUQujRRpBGootXFgEStEmkTaagoT6a3OGrjajo9653jlzH3i5F4Y59/yec973nHOHkRIlSpQoUSJvBTQCViywwftO4CGwvWjAgR0OGqB9qSk+g1cCjx34D2BXMeV4F//0sphG/RLwJwDf5T28A6wHhlmsm17DB0b9Nv/rYjHkeVWGUQe4XAy53kFm3SgG+KdZ4B/5DG9AOTCSBb7f24IHCKgFprPAzwAlPlf7JmCB7GryGb6V5XXX57xvWwF+3Oe8X2nkAY55B+8K3sEc4Ht9rfY1wHwOBtR5NfoOvhSYzAG+29cd3jC5qcXH3H+SI/xnH3P/Krnrmm95f5TVqcIn+KocK35aH6PqXyrf8GYmSZ9W+axuLwwwMwHPJDWs8qs9vkz/K6xBvsAfZ236HmU/S/K02amV1LfGJr5GaUAqD/ClkkbW0cyvgjQgkLqjktbzi+xswRkQWO6+SNq7zuaqCsqANDwwJKkxhD7VRWmAhQT/XtKJsLLJzFKxnwEB+O4Q4SXJ3JuiSAzYtE74Xkln8tCv32bWE8sUCMAPSjqSp37NmVlpXFOgGviZR3hJKgE6YzMDAqPeLulVhEV6t6QJt8RGPwMChagSeBMxvCQNOOOjNSDwwM3APUnTks5uwJmqHviQbxOWwqeAC8Br4qNB16/wawBwWtJhSS0uGhRPTUo6ZGbfwh7xOxSWbi1J01BMqASuA0MFYsIEcCp0I1yDW4AbwEABGDEGdGQo3uHtA4CTks5JOi/pQEzrw4ykB5Lum9l42Aakz/oCytzBp9VFm6SymJkxJum5pBdmNpyJI7TjsGu42q0izZKa3LU5RoYMSXrnos/MpkI1YBljKtySuj8Q+yTtkVTjIrUBhoxKeuuiP5K/kmSbfu6zrZJ2StrmXoelrxUuvcpdlEpakDQvac5dl97Puv1COqbS92a2oESJEiVKlGiR/gLM/y854tbUlAAAAABJRU5ErkJggg==")
  v-toolbar-title CEE
   span.hidden-sm-and-down.ml-3.font-weight-light Centrální evidence exekucí ČR
  v-spacer
  v-tabs(slot='extension' centered show-arrows)
   v-tabs-slider
   v-tab(to='/uvod' key='tab-home') Úvod
   v-tab(to='/' key='tab-search') Vyhledávání
   v-tab(to='/osluzbe' key='tab-about') O službě
 v-tabs-items
  router-view
</template>

<template type="text/x-template" id="l-seo">
v-card
 v-card-title(primary-title)
  h2.headline Seznam častých jmen a příjmení v ČR
  v-btn(color="success" href="/") Vyhledat
 v-divider
 v-card-text
  p Tento seznam slouží pouze pro internetové vyhledávače.
  p Software generuje následující jména a příjmení náhodně, přičemž zdrojem jmen je databáze nejčastějších jmen a příjmení Českého statistického úřadu.
  p Kombinace jména a příjmení tu uvedeného je vygenerována strojově a jejich spojitost s osobami stejného či podobného jména
   em je čistě náhodná!
  p Pokud však chcete, 
   a(href="/") můžete si ověřit
   | , zda osoba není v exekucii.
  | ZOZNAM
  p centrální evidence exekucí, exekuce seznam, databáze exekucí, databáze dlžníků, registr exekucí, seznam dlžníků v exekuci, seznam exekucí, exekuce seznam dlžníků, registr exekucí, rejstřík exekucí, exekuční rejstřík, jak zistit exekúci, ověření exekuce, exekuce
</template>

<template type="text/x-template" id="l-home">
v-tab-item
 v-container(fluid grid-list-lg)
  v-layout(row wrap)
   v-flex(xs12 lg10)
    v-card
     v-card-title(primary-title)
      h1.headline Centrální evidence exekucí Exekutorské komory ČR
     v-card-text
      l-home-text
   v-flex(xs12 lg2)
    v-card(hover width="226" height="394")
     iframe(id="ytplayer" type="text/html" width="226" height="394" src="https://www.youtube.com/embed/3IbX56ViW_I?modestbranding=1&amp;origin=https://cresk.cz&amp;rel=0" frameborder="0" allowfullscreen="1")
</template>

<template type="text/x-template" id="l-search">
v-tab-item(value='tab-search')
 v-container(fluid grid-list-lg)
  v-layout(row wrap)
   v-flex(xs12 lg8)
    l-person-form
   v-flex(xs12 lg4)
    l-quick
// v-container(fluid grid-list-lg)
//  v-layout(row wrap)
//   v-flex(xs12)
//    l-seo
</template>

<template type="text/x-template" id="l-about">
v-tab-item(value='tab-about')
 v-container(fluid grid-list-lg)
  v-layout(row wrap)
   v-flex(xs12)
    v-card
     v-card-title(primary-title)
      h1.headline O službě CEE ČR
     v-card-text
      l-about-text
</template>

<template type="text/x-template" id="l-result">
div
 v-container(fluid grid-list-lg v-if="!status")
  v-layout(row wrap)
   v-flex(xs12)
    v-card
     v-card-text 
      v-progress-linear(indeterminate color="grey").mb-2
      | Načítám výsledky...
 v-container(fluid grid-list-lg v-else-if="!status.list")
  v-layout(row wrap)
   v-flex(xs12 lg4)
    v-alert(:value="!status.list" type="warning") 
     | Výsledek dotazu není dostupný.
 v-container(fluid grid-list-lg v-if="status")
  v-layout(row wrap v-if="status.list")
   v-flex(xs12)
    v-card
     v-card-title(primary-title)
      h1.headline Výpis z Centrální evidence exekucí ČR
      v-container(grid-list-md)
       v-layout(row wrap)
        v-flex(xs6) Příjmení
        v-flex(xs6) 
         kbd {{status.Prijmeni}}
       v-layout(row wrap)
        v-flex(xs6) Jméno
        v-flex(xs6) 
         kbd {{status.Jmeno}}
       v-layout(row wrap)
        v-flex(xs6) Datum narození
        v-flex(xs6) 
         kbd {{status.Narozen}}
       v-layout(row wrap)
        v-flex(xs6) Počet exekucí
        v-flex(xs6) 
         kbd {{status.count}}
 v-container(fluid grid-list-lg v-if="status")
  v-layout(row wrap v-if="status.list")
   v-flex(xs12)
    v-alert(:value="!status.count" type="success") 
     | Osoba NEMÁ žádnou pravomocnou exekuci.
    v-alert(:value="status.count" type="error") 
     | Osoba má {{ status.count }} pravomocných exekucí!
 v-container(fluid grid-list-lg v-if="status")
  v-layout(row wrap v-if="status.list")
   v-flex(v-if="status.list" xs12 lg4 v-for='(ex,index) in status.list' :key='index')
    l-exekuce(v-bind:index='index' v-bind='ex' v-bind:dateseq="dateseq" v-bind:auth="auth")
</template>
<!--
 v-container(fluid grid-list-lg v-if="status")
  v-layout(row wrap v-if="!status.count")
   a(:href="'https://flexifin.cz/source#madluhy/'+dateseq")
    img(style='width:100%;' border="0" src="/madluhy/banner_1200x400_3.jpg")
-->

<template type="text/x-template" id="l-exekuce">
v-card(hover)
 v-card-title(primary-title)
  v-chip(color='grey' text-color='white').mr-3 {{index+1}}.
  h3.headline {{SpZn}}
 v-divider
 v-card-text.font-weight-light
  span(v-if="Identifikace") Identifikace dlužníka: {{Identifikace}}
   br
  span(v-if="Detail") Detail: {{Detail}}
   br
  span(v-if="Aktualizace") Aktualizace: {{Aktualizace}}
   br
  span(v-if="Datum") Datum: {{Datum}}
   br
  span(v-if="Exekutor") Exekutorský úřad: {{Exekutor}}
   br
  span(v-if="TelefonUradu") Telefon úřadu: {{TelefonUradu}}
   br
  span(v-if="SpZn") Spisová značka exekuce: {{SpZn}}
   br
  span(v-if="FileName") Výpis: {{dateseq}}/{{FileName}}
   br
 v-divider(v-if="Podrobnosti")
 v-card-text.font-weight-light(v-if="Podrobnosti")
  span(v-if="Podrobnosti.Datum") Datum exekuce: {{Podrobnosti.Datum}}
   br
  span(v-if="Podrobnosti.SpZnSoudu") Soudní sp.zn.: {{Podrobnosti.SpZnSoudu}}
   br
  span(v-if="Podrobnosti.SpZnExekutora") EX sp.zn.: {{Podrobnosti.SpZnExekutora}}
   br
  span(v-if="Podrobnosti.Castka") Částka: {{Podrobnosti.Castka}}
   br
  span(v-else) Částka: 
   em viz výpis
   br
 v-card-actions
  v-div(v-if="!Amount")
   v-btn(v-if="!FileURL" color='success' @click="showDetail" :disabled="uploadWaiting") 
    v-icon(left) credit_card
    | Zobrazit částku
  v-btn(v-if="FileURL" :href="FileURL")
   v-icon(left) attach_file
   | {{FileName}}
</template>


<template type="text/x-template" id="l-person-form">
v-card.elevation-12
 v-card-title(primary-title)
  h1.headline Vyhledání osoby v Centrální evidenci exekucí
 v-card-text
  | Zobrazte si seznam pravomocných exekucí zadáním jména a příjmení
  | (s diakritikou) a data narození.
  v-form(ref='personForm' v-model='valid' lazy-validation)
   v-alert(:value="serverError" type="error" transition="scale-transition") {{serverError}}
   v-alert(v-for='(msg,index) in msgs' :key='index' :value="true" :type='msg.type') {{msg.html}}
   v-container(grid-list-md)
    v-layout(row wrap)
     v-flex(xs12 lg4)
      v-text-field(v-model='givenname' :rules='givennameRules' label='Jméno (s diakritikou)' required)
     v-flex(xs12 lg4)
      v-text-field(v-model='surname' :rules='surnameRules' label='Příjmení (s diakritikou)' required)
     v-flex(xs12 lg4)
      v-menu(ref='menu' :close-on-content-click='false' v-model='menu' :nudge-right='40' lazy transition='scale-transition' offset-y full-width min-width='290px')
       v-text-field(slot='activator' v-model='birthDate' label='Datum narození' :rules='dateRules' append-icon='event' readonly required)
       v-date-picker(ref='picker' v-model='birthDate' locale="cs" :max='new Date(new Date().setDate(new Date().getDate()-15*365)).toISOString().substr(0, 10)' min='1900-01-01' @change='save')
     v-flex(xs12 lg4)
      v-btn(color='success' :disabled='initWaiting || !valid || uploadWaiting' @click='uploadPerson')
       v-icon search
       | Vyhledat
</template>

<template type="text/x-template" id="l-payment">
v-container(fluid grid-list-lg)
 v-layout(row wrap)
  v-flex(xs12)
   v-card
    v-card-title(primary-title)
     h1.headline(v-if='!!$route.query.parentAuth') Detail exekuce je zpoplatněn
     h1.headline(v-else) Zvolte platební metodu
    div(v-if='!!$route.query.parentAuth')
     v-card-text
      | Zobrazení detailu exekuce (částky) je
      | zpoplatněno ze zákona 
      a(rel='nofollow' target="_blank" href='http://www.zakonyprolidi.cz/cs/2008-329') 329/2008 Sb.
    v-card-text(v-else)
     | Vyhladávání v Centrální evidenci exekucí je 
     | zpoplatněno ze zákona 
     a(rel='nofollow' target="_blank" href='http://www.zakonyprolidi.cz/cs/2008-329') 329/2008 Sb.
    v-card-text
     v-alert(:value="paymentError" type="error" transition="scale-transition") {{paymentError}}
     v-alert(:value="serverError" type="error" transition="scale-transition") {{serverError}}
   v-expansion-panel(:value="0")
    l-method-card(:dateseq="$route.params.dateseq" :auth="$route.params.auth" :parent="$route.query.parent" :parentAuth="$route.query.parentAuth" @has-been-paid="startScreening" @payment-error="onPaymentError")
    l-method-sms(:dateseq="$route.params.dateseq" :auth="$route.params.auth"  :parent="$route.query.parent" :parentAuth="$route.query.parentAuth" @has-been-paid="startScreening")
    l-method-login
  v-dialog(v-model="screeningRunning" hide-overlay persistent width="300")
   v-card(color="primary" dark)
    v-card-text 
     v-icon.mr-1(color='success') check
     | Platba byla přijata, dotaz se realizuje...
     v-progress-linear(indeterminate color="white").mb-0
</template>

<template type="text/x-template" id="l-method">
v-expansion-panel-content
 div(slot='header')
  slot(name="title")
  v-chip(color='primary' text-color='white').ml-2
   slot(name="chip")
 v-card
  v-card-text
   slot
</template>

<template type="text/x-template" id="l-method-sms">
l-method
 span(slot='title') Platba pomocí SMS
 span(slot='chip') 99 Kč
 main
  v-card-text
   v-alert(:value='true' type='info' outline)
    | Pro platbu pomocí mobilního telefonu 
    a(href="smsto:90709?body=CEE") pošlete SMS 
    | ve tvaru 
    strong CEE 
    | na telefonní číslo 
    strong 907 09
    | .
    br
    | Obratem Vám bude zaslán potvrzovací kód.
   v-form(ref='pinForm' v-model='valid' lazy-validation)
    v-alert(:value="serverError" type="error" transition="scale-transition") {{serverError}}
    v-container(grid-list-md)
     v-layout(row wrap)
      v-flex(xs8)
       v-text-field(v-model='pin' :rules='pinRules' type='number' label='Zadejte kód z SMS' required)
      v-flex(xs4)
       v-btn(color='success' @click='submitPIN' :disabled="waiting") 
        | Ověrit
   p.caption(style='color:grey')
    | Cena služby je 99 Kč s DPH. Zajišťuje Sokordia, s.r.o. a ComGate Payments, a.s. 
    | Kontaktný e-mail 
    a(href='mailto:info@madluhy.cz') info@madluhy.cz
    | , víc info na 
    a(rel="nofollow" target="_blank" href='https://www.platmobilem.cz') www.platmobilem.cz
</template>

<template type="text/x-template" id="l-method-card">
l-method
 span(slot='title') Platba platební kartou
 span(slot='chip') 60 Kč
 main
  v-card-text
   v-img(position='left' contain max-height='200' src='/images/visa-mc.jpg')
  v-card-text
   v-btn(v-if="!finish" color='success' @click="cardPayment" :disabled="cardPaymentWaiting")
    v-icon(left) credit_card
    | Zaplatit platební kartou
   v-form(v-else ref='phoneForm' v-model='valid')
    v-alert(:value="serverError" type="error" transition="scale-transition") {{serverError}}
    v-container(grid-list-md)
     v-layout(row wrap)
      v-flex(xs6)
       v-text-field(v-model='phone' :rules='phoneRules' type='phone' prefix='+420' label='Telefonní číslo' required pattern='[0-9]{9}' @input='checkInputValid')
      v-flex(xs6)
       v-btn(color='success' @click="cardFinish" :disabled="!isInputValid || cardPaymentWaiting")
        v-icon(left) credit_card
        | Zaplatit
   p.caption(style='color:grey; margin-top: 1em')
    | Provozovatel: Sokordia, s.r.o, Antonínská 18, 60200 Brno, email: info@madluhy.cz, tel: +420534008315, IČO: 29190088. Platbou souhlasíte s 
    a(rel="nofollow" target="_blank" href='https://ispis.cz/lustrace/podminky') obchodními podmínkami.
    | .
</template>

<template type="text/x-template" id="l-method-login">
l-method
 span(slot='title') Firemní registrace
 span(slot='chip') 25 Kč + DPH
 main
  v-card-text
   | Pro opakované lustrace, rozšírené lustrace či hromadné lustrace si vytvořte 
   a(rel="nofollow" target="_blank" href='https://ispis.cz/lustrace/registrace') firemní účet
   | .
</template>

<template type="text/x-template" id="l-home-text">
div
 h3 Co je to Centrální evidence exekucí?
 p
  | Centrální evidence exekucí (dále len „CEE“) je veřejný seznam,
  | do kterého exekutoři zapisují každou pravomocnou exekuci.
  | Je zřízený ze zákona 
  a(rel='nofollow' target="_blank" href='https://www.zakonyprolidi.cz/cs/2001-120#p125') § 125 zákona č. 120/2001 Sb.
 h3 Přístup veřejnosti do CEE
 p
  | Do evidence může nahlídnout kdokoliv a prověřit si jakoukoliv osobu. 
  | Ověření osoby v seznamu exekucí jako i zobrazení detailu dané exekuce (vymáhané částky) je zpoplatněné dle vyhlášky č. 
  a(rel='nofollow' target="_blank" href='https://www.zakonyprolidi.cz/cs/2008-329') 329/2008 Sb.
  | .
 h3 Jak funguje vyhledávání v CEE?
 p
  ul
   li Vyhledává se zadáním jména, příjmení a data narození.
   li Platba probíhá pomocí Premium SMS nebo platební kartou.
   li Okamžitě po platbě je zobrazen seznam exekucí osoby on-line.
   li V seznamu je po další platbě možné otevřít výpis zvolené exekúcie.
   li Výpis exekucí je PDF soubor obsahující podrobnosti o dané exekuci.
 h3 Zápis a výmaz exekuce v CEE
 p
  | Exekutor po obdržení návrhu na exekuci nejdřív zablokuje majetek, následně zkoumá oprávněnost exekuce, vyzve dlužníka k dobrovolnému plnění, a až po nějakých lhůtách, často měsících, se exekuce stává pravomocnou a je zapsána do Centrální evidence exekucí.
  | Po ukončení exekuce je exekutor povinen do 14 dnů údaj o exekuci z CEE vymazat.
 p
  | Pro více informací nás kontaktujte na 
  a(href='mailto:info@madluhy.cz') info@madluhy.cz
</template>

<template type="text/x-template" id="l-quick">
v-card
 v-card-title(primary-title)
  h2.headline Rychlé ověření osoby
 v-divider
 v-card-text
  | Pro zobrazení seznamu exekucí libovné osoby zadejte její údaje do vyhledávacího formuláře.
 v-divider
 v-card-text
  | Služba zpřístupňuje Centrální evidenci exekucí Exekutorské komory ČR.
  | Provozovatelem těchto stránek je Sokordia, s.r.o., 
  | zdrojem dat je Komora exekutorú ČR. Používáním služby souhlasíte s 
  a(href='https://ispis.cz/lustrace/podminky') obchodními podmínkami
  | .
 v-divider
 v-card-text
  | Pro firemní zákazníky je možná 
  a(href='https://ispis.cz/lustrace/registrace') registrace
  |  umožňující platbu na fakturu, přístup přes API či hromadné lustrace.
</template>

<template type="text/x-template" id="l-about-text">
div
 p
  | CEE ČR umožňuje kontrolu exekucí zadané osoby. 
  | Výsledky jsou k dispozici okamžitě!
 p
  | Služba CEE-CR slouží k přístupu do Centrální evidence exekucí 
  | Exekutorské komory ČR.
 p
  | Za správnost údajů zapisovaných do evidence zodpovídá příslušný
  | soudní exekutor.
 p
  | Centrální evidence exekucí neobsahuje údaje o exekucích (výkonech rozhodnutí) vedených soudy, orgány státní správy a samosprávy, finančními institúcemi či zdravotní poišťovnami dle jiných předpisů než dle exekučního řádu.
 p
  | Provozovatelem těchto stránek je společnost Sokordia, s.r.o.,
  | se sídlem Antonínská 18, 60200 Brno, 
  | zapsaná v obch. rejstříku KS v Brně, v oddíle C, vložce č. 64009, 
  | IČO 29190088. 
 p
  | Zdrojem údajů je Exekutorská komora ČR.
 p
  | Výpisy z internetu jsou informačního charakteru, pro
  | vystavení potvrzení o tom, že proti Vám není vedené exekuční řízení
  | se obraťte na
  a(href='https://ekcr.cz') Exekutorskou komoru ČR
  | .
 p
  | Pro firemní zákazníky je možná 
  a(href='https://ispis.cz/lustrace/registrace') registrace
  |  umožňující platbu na fakturu, přístup přes API či hromadné lustrace.
 p
  | Pro více informací nás kontaktujte na 
  a(href='mailto:info@madluhy.cz') info@madluhy.cz
  | , pričemž vždy uveďte, koho jste vyhledávali nebo z jakého tel. čísla jste zasílali SMS.
</template>

<!--
1. Zadejte údaje o osobě
Zadejte jméno, příjmení a datum narození osoby (pokud jej znáte), kterou chcete vylustrovat.
2. Zvolte platební metodu
Jednorázové lustrace je možné platit pomocí SMS v ceně 60 Kč nebo pomocí platební karty za 30 Kč.
3. Výsledek teď hned!
Po zaslání SMS nebo provedení platby kartou se Vám zobrazí výsledky dotazu okamžitě!
-->

<script src="https://unpkg.com/vue@2.6.10/dist/vue.js"></script>
<script src="https://unpkg.com/vuetify@1.5.16/dist/vuetify.js"></script>
<script src="https://unpkg.com/vue-router@3.1.2/dist/vue-router.js"></script>
<script src="https://pugjs.org/js/pug.js" charset="UTF-8"></script>
<!-- https://github.com/pugjs/pug/issues/2876 -->
<script>
// https://cresk.sk/js/pug-generic.js
!function r(e,n,t){function u(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(o)return o(i,!0);var p=new Error("Cannot find module '"+i+"'");throw p.code="MODULE_NOT_FOUND",p}var a=n[i]={exports:{}};e[i][0].call(a.exports,function(r){return u(e[i][1][r]||r)},a,a.exports,r,e,n,t)}return n[i].exports}for(var o="function"==typeof require&&require,i=0;i<t.length;i++)u(t[i]);return u}({1:[function(r,e,n){},{}],2:[function(r,e,n){"use strict";var t=function(r){if(r&&r.__esModule)return r;var e={};if(null!=r)for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n]);return e.default=r,e}(r("pug"));r("../browser/menu.js"),window.pug=t},{"../browser/menu.js":1,pug:"pug"}]},{},[2]);
</script>
<script src="https://unpkg.com/axios@0.19.0/dist/axios.min.js"></script>

<script>

// uloz referrera do localStorage - at se nezapisuje platebni brana
var today = (new Date()).toISOString().replace(/T.*/,'');
var lS = window.localStorage;
var g_gclid = window.location.search.match(/gclid=/) ? true : false;
if(!lS['ref'+today]) {
	lS['ref'+today] = document.referrer || '-';
}
if(g_gclid) {
	lS['gclid'+today] = g_gclid;
  ga('send', {
  	hitType: 'event',
    eventCategory: 'Conversion',
    eventAction: 'AdClick',
    eventLabel: 'GAdsClick'
  });
}
g_gclid = lS['gclid'+today];
var g_referrer = lS['ref'+today];
// var gclid = gclid posilat do options

var g_retry; // opakovani payment pres konzoli: "g_retry.doScreening()"

var detail = {"Narozen":"1983-08-12","Priezvisko":"Bérešová","count":4,"list":[
{"DatumNarodenia":"12.08.1983","Detail":"MTkwREFFRTktNkM3OC00RUM5LUFDQzYtRkVBM0E2MjZGNjdBOjE3NDgzNjEy","Meno":"Marianna","Mesto":"Slovenské Ďarmoty","PSC":"991 07","Priezvisko":"Bérešová","SpZn":"48479/18","Typ":"FO","Ulica":"108"},
{"DatumNarodenia":"12.08.1983","Detail":"MTkwREFFRTktNkM3OC00RUM5LUFDQzYtRkVBM0E2MjZGNjdBOjE1MTk4NTA=","ICO":"46188321","Meno":"Marianna","Mesto":"Slovenské Ďarmoty","NazovSpolocnosti":"Bérešová Marianna","PSC":"991 07","Priezvisko":"Bérešová","SpZn":"226/2013","Typ":"FOP","Ulica":"Slovenské Ďarmoty 108"},
{"DatumNarodenia":"12.08.1983","Detail":"MTkwREFFRTktNkM3OC00RUM5LUFDQzYtRkVBM0E2MjZGNjdBOjE1MjA4MzM=","ICO":"46188321","Meno":"Marianna","Mesto":"Slovenské Ďarmoty","NazovSpolocnosti":"Bérešová Marianna","PSC":"991 07","Priezvisko":"Bérešová","SpZn":"1834/2013","Typ":"FOP","Ulica":"Slovenské Ďarmoty 108"},
{"DatumNarodenia":"12.08.1983","Detail":"MTkwREFFRTktNkM3OC00RUM5LUFDQzYtRkVBM0E2MjZGNjdBOjE1MjE2NzY=","ICO":"46188321","Meno":"Marianna","Mesto":"Slovenské Ďarmoty","NazovSpolocnosti":"Bérešová Marianna","PSC":"991 07","Priezvisko":"Bérešová","SpZn":"3149/2013","Typ":"FOP","Ulica":"Slovenské Ďarmoty 108"}]};
</script>

<script>
function pugTemplate(id) {
	return pug.render(document.getElementById(id).innerHTML);
}

function _apiNext(res,err,onFinish,onResult,onError) {
  if(onFinish) onFinish();
  if(err && onError) onError(err);
  if(res && onResult) onResult(res);
}

function apiPostForm(info) {
    var form = document.createElement("form");
    form.method = "POST";
    form.action = info.postURL;
	info.form.forEach((kv)=>{
		var el = document.createElement('input');
		el.type = 'hidden';
		el.name = kv[0];
		el.value = kv[1];
    	form.appendChild(el);  
    });
    document.body.appendChild(form);
	// console.log("Leaving app",info);
	form.submit(); // bye bye app
}

function apiCallFake(method,args,onFinish,onResult,onError) {
	var mockup = {
		'newScreening': { guid: '1b18925e180fd0fc6547ec17', msgs:[
              { type:'warning', html:'API je prepnuté do demo režimu.' } ] },
		'upload': { dateseq: '20181224.1', auth:'123456' },
		'usePIN': {},
		'cardRequest': { postURL:'#/payment/20181224.1/123456'+
                '?response=cardsk&ok=1', form: [ [ 'key1', 'value1' ] ] },
		'performScreening': {},
		'getResults': { status: detail }
		// downloadURL ?
	};
	setTimeout(() => {
		var res = mockup[method];
		var err = res ? null : 'Unknown API method '+method;
        console.log('apiCallFake',method,args,res,err);
        _apiNext(res,err,onFinish,onResult,onError);
	},1000);
}

function apiCallReal(fn,args,onFinish,onResult,onError) {
	axios.get('/cresk/'+fn,{ params: args })
	.then(function (response) {
		var res = response.data;
		console.log('apiCallReal',fn,args,res,null);
		if(onResult) onResult(res);
	})
	.catch(function (err) {
		var msg;
		if(err.response) { // X-Ispis-Error
			msg = err.response.headers['x-ispis-error'] || 'Server error';
		} else if(err.request) { // XMLHttpRequest
			console.log(err);
			console.log(err.request);
            msg = err.request.statusText || 'Network error';
        } else {
            msg = err.message || 'axios: Unknown error';
        }
        console.log('apiCallReal',fn,args,null,msg);
		if(onError) onError(msg);
	})
	.then(function () {
		if(onFinish) onFinish();
	});
}

var apiModeHistory = (window.location.protocol=='file:') ? false : true;
var apiCall = apiModeHistory ? apiCallReal : apiCallFake;

// newScreening() -> guid,msgs [{type,text}] / error
// upload(guid,Prijmeni,Narozen,CRE_Detaily,appendTo?,appendAuth?) -> dateseq,auth
// usePIN(dateseq,auth,pin) -> null / error
// cardRequest(dateseq,auth,returnURL) -> { postURL, form=>[] } - musime postnout
// performScreening(dateseq,auth) -> null - kolecko, spusti (nebo ignoruj)
// getResults(dateseq,auth) -> {...,list=>[]} - list i s amount/downloadURL?
// downloadPDF(dateseq,auth) - nevraci JSON, ale disposition, app/pdf a content

Vue.component('l-cresk', { 
  template: pugTemplate('l-cresk'),
  data: () => ({
  }),
});

Vue.component('l-exekuce', { 
  template: pugTemplate('l-exekuce'),
  props: ['dateseq','auth','index', // basic[{k,v}], detail?{[{k,v}],url}
   'Meno','Priezvisko','DatumNarodenia','Ulica','PSC','Mesto','ICO',
   'Identifikace','SpZn','Datum','Aktualizace','Detail','Exekutor',
   'TelefonUradu','FileName','FileURL','Amount','Podrobnosti'],
  data: () => ({
    uploadWaiting: false,
  }),
  methods: {
    showDetail() {
      this.uploadWaiting = true;
      var exId = this.$props.Detail;
      var args = { dialog: "basic", source: "vueng", CEE_Detaily:exId,
									 referrer: g_referrer, gclid: g_gclid,
                   Parent: this.$props.dateseq, ParentAuth: this.$props.auth };
      apiCall('upload',args,()=>{
        this.uploadWaiting = false;
      },(res)=>{
        var url = "/payment/"+res.dateseq+"/"+res.auth+
                     "?parent="+args.Parent+"&parentAuth="+args.ParentAuth;
        this.$router.push(url)
      },(err) => {
        this.serverError = err;
      });
    },
  }
});

const LResult = Vue.component('l-result', { 
  template: pugTemplate('l-result'),
  data: () => ({
    serverError: null,
    status: null,
    dateseq: null,
    auth: null,
  }),
  created() {
    this.dateseq = this.$route.params.dateseq;
    this.auth = this.$route.params.auth;
    var args = { dateseq: this.dateseq, auth: this.auth };
    apiCall('getResults',args,null,(res)=>{
      this.status = res.status;
    },(err)=>{
      this.serverError = err;
    });
  },
});

const LSearch = Vue.component('l-search', { 
  template: pugTemplate('l-search'),
});

Vue.component('l-person-form', { 
  template: pugTemplate('l-person-form'),
  data: () => ({
    birthDate: null,
    uploadWaiting: false,
    initWaiting: true,
    serverError: null,
    guid: null, // u detailu taky?
    msgs: [],
    dateRules: [
      v => !!v || 'Datum narození osoby je povinný údaj.',
    ],
    menu: false,
    valid: true,
    surname: '',
    givenname: '',
    givennameRules: [
      v => !!v || 'Jméno osoby je povinný údaj.',
      v => (v.indexOf(' ') == -1) || 'Zadejte jenom jméno, bez příjmení',
    ],
    surnameRules: [
      v => !!v || 'Příjmení osoby je povinný údaj.',
      v => (v.indexOf(' ') == -1) || 'Zadejte jenom příjmení, bez jména',
    ],
  }),
  created() {
    this.surname = this.$route.params.pathMatch.replace(
							/^\//,'').split("\/")[0]; // '/Odraska/Miroslav'
    apiCall('newScreening',{},()=>{
      this.initWaiting = false;
    },(res)=>{
      this.guid = res.guid;
      if(res.msgs) this.msgs = res.msgs;
    },(err)=>{
      this.serverError = err;
    });
  },
  watch: {
    menu (val) {
      val && this.$nextTick(() => (this.$refs.picker.activePicker = 'YEAR'))
    }
  },
  methods: {
    uploadPerson () {
      if(this.$refs.personForm.validate()) {
        this.uploadWaiting = true;
        var args = { dialog: "basic", source: "vueng", guid: this.guid, 
					Jmeno: this.givenname, Prijmeni:this.surname, Narozen:this.birthDate };
        apiCall('upload',args,()=>{
          this.uploadWaiting = false;
        },(res)=>{
          this.$router.push("/payment/"+res.dateseq+"/"+res.auth);
        },(err) => {
          this.serverError = err;
        });
      }
    },
    save (birthDate) {
      this.$refs.menu.save(birthDate)
    }
  }
});

Vue.component('l-quick', { template: pugTemplate('l-quick') });
Vue.component('l-home-text', { template: pugTemplate('l-home-text') });
Vue.component('l-about-text', { template: pugTemplate('l-about-text') });

const LMethod = Vue.component('l-method', { 
  template: pugTemplate('l-method'),
  data: () => ({
    title: 'No title',
    chip: 'Chip',
  }),
});

Vue.component('l-method-sms', { 
  template: pugTemplate('l-method-sms'),
  props: ['dateseq','auth','parent','parentAuth'],
  data: () => ({
    pin: '',
    valid: true,
    waiting: false,
    serverError: null,
    pinRules: [
      v => !!v || 'Pošlite SMS a prepíšte kód z odpovede.',
//      v => (!isNaN(parseInt(v)) && v >= 100000 && v <= 999999) 
//				|| 'Kód má mať 6 cifier',
    ],
  }),
  methods: {
    submitPIN () {
      if(!this.$refs.pinForm.validate()) return;
      var args = { dateseq: this.$props.dateseq, auth: this.$props.auth,
                   pin: this.pin };
      this.waiting = true;
      apiCall('usePIN',args,()=>{
        this.waiting = false;
      },(res)=>{
        this.$emit('has-been-paid');
      },(err) => {
        this.serverError = err;
      });
    }
  }
});

Vue.component('l-method-card', { 
  template: pugTemplate('l-method-card'),
  props: ['dateseq','auth','parent','parentAuth'],
  data: () => ({
    phone: '',
		finish: false,
    phoneRules: [
      v => !!v || 'Zadejte číslo jako 9 cifer',
//      v => (!isNaN(parseInt(v)) && v >= 100000 && v <= 999999) 
//				|| 'Kód má mať 6 cifier',
    ],
    cardPaymentWaiting: false,
    isInputValid: false,
    serverError: null,
  }),
  methods: {
    cardPayment () {
			this.finish = true;
		},
    checkInputValid () {
			this.isInputValid = this.phone.length == 9;
		},
    cardFinish () {
      this.cardPaymentWaiting = true;
      var args = { dateseq: this.$props.dateseq, auth: this.$props.auth,
									 phone: this.phone };
			var l = window.location;
      var rURL = apiModeHistory ? l.protocol+"//"+l.host
																: l.href.split('#')[0]+"#";
      rURL = rURL+"/payment/"+args.dateseq+"/"+args.auth;
      rURL = rURL+"?response=cardcz";
      if(this.parent) {
        rURL = rURL+"&parent="+this.parent+"&parentAuth="+this.parentAuth;
      }

      args.returnURL = rURL;
      
      apiCall('cardRequest',args,()=>{
        // this.cardPaymentWaiting = false; // ani ne, chvili ten POST trva
      },(res)=>{
        apiPostForm(res);
      },(err) => {
        this.cardPaymentWaiting = false;
        this.serverError = err;
      });
    }
  }
});

Vue.component('l-method-login', { 
  template: pugTemplate('l-method-login') 
});

const LSEO = Vue.component('l-seo', { template: pugTemplate('l-seo') });

const LAbout = Vue.component('l-about', { template: pugTemplate('l-about') });

const LHome = Vue.component('l-home', { template: pugTemplate('l-home') });

const LPayment = Vue.component('l-payment', { 
  template: pugTemplate('l-payment'),
  data: () => ({
    screeningRunning: false,
    paymentError: null,
    serverError: null,
  }),
  created() {
    this.paymentError = this.$route.query.error;
	g_retry = this;
    if(this.$route.query.ok) {
      this.startScreening();
    }
  },
  methods: {
    onPaymentError(err) {
    	this.paymentError = err;
    },
    startScreening() {
      this.repeatScreening();
    },
    repeatScreening() {
      this.doScreening();
      setTimeout(() => {
        // uff: a je to urcite tato lustrace nebo nahodou uz dalsi??
        if(this.screeningRunning) this.repeatScreening();
      },10*60000); // lustrace trva klidne 5 minut???
    },
    doScreening() {
      this.screeningRunning = true
      console.log(this.$route);
      var args = { dateseq: this.$route.params.dateseq, 
                   auth: this.$route.params.auth };
	  try {
          ga('require', 'ecommerce');
          ga('ecommerce:clear');
          ga('ecommerce:addTransaction', { 'id': args.dateseq });
          ga('ecommerce:addItem', { 'id': args.dateseq, 'name': 'MaDluhy',
                        'price': '60', 'quantity': '1', 'currency': 'CZK' });
          ga('ecommerce:send');
          ga('send', {
            hitType: 'event',
            eventCategory: 'Conversion',
            eventAction: 'Payment',
            eventLabel: 'PlatbaPrijata'
          });
					if(g_gclid) {
	          ga('send', {
  	          hitType: 'event',
    	        eventCategory: 'Conversion',
      	      eventAction: 'Ad',
        	    eventLabel: 'GAdsKonverze'
          	});
					}
	  } catch(e) {
         // nada
	  }
	  try {
	      apiCall('performScreening',args,()=>{
			this.screeningRunning = false;
		  },(res)=>{
			this.screeningRunning = false; // (sice presmerovavame, ale radsi)
			var dateseq = this.$route.query.parent // po platbe detailu zobraz
			var auth = this.$route.query.parentAuth // opet seznam, ne detail
			if(!dateseq) { dateseq = args.dateseq; auth = args.auth };
			this.$router.push('/result/'+dateseq+"/"+auth);
		  },(err) => {
			this.screeningRunning = false; // mel to volat apiCall ?
			this.serverError = err;
			// todo: nastav timeout na minutu a zkus znovu?
		  });
	  } catch(e) {
		this.screeningRunning = false; // mel to volat apiCall ?
		this.serverError = e;
		alert(e);
	  }
    }
  }
});

const router = new VueRouter({ 
  mode:apiModeHistory ? 'history' : 'hash', 
  routes: [
   { path: '/uvod', component: LHome },
   { path: '/osluzbe', component: LAbout },
   { path: '/payment/:dateseq/:auth', component: LPayment },
   { path: '/result/:dateseq/:auth', component: LResult },
   { path: '*', component: LSearch },
] });

new Vue({
  el: '#app',
  router,
})
</script>

</body>
</html>
