private async void Timer1_Tick(object sender, EventArgs e)
        {
            if (pbQRKod.Image == null)
            {
                return;
            }
            var text = QRCodeHelper.DecodeQRCode(pbQRKod.Image);

            if (!String.IsNullOrEmpty(text))
            {
                var ClanSearchRequest = new Model.Requests.ClanSearchRequest()
                {
                    QrCodeText = text
                };

                var list = await _apiService_Clan.Get <List <ClanViewRequest> >(ClanSearchRequest);

                if (list.Count != 0)
                {
                    var clanId = list[0].Id;
                    cbClan.SelectedValue = clanId;
                    timer1.Stop();
                    FinalFrame.Stop();
                    MessageBox.Show(list[0].Display, "Korisnik pronadje", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                    pbQRKod.Image = null;
                    //doradit messagebox
                }
                else
                {
                    MessageBox.Show("QR Kod nije validan", "error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                setScannerVisible(false);

                if (FinalFrame != null)
                {
                    if (FinalFrame.IsRunning == true)
                    {
                        FinalFrame.Stop();
                    }
                    FinalFrame = null;
                }
                if (timer1.Enabled == true)
                {
                    timer1.Enabled = false;
                }
            }
        }
        /*
         * Imaju cetri moguca rezultata
         *
         * 1.QR Kod nije prepoznatljiv
         * 2.QR Kod se ne moze ocitat
         * 3.QR Kod je prepoznat i sve je u redu u vezi clanarina
         * 4.QR Kod je prepoznat ali clan ima ne podmirenih obaveza
         */
//...

        private async Task tick()
        {
            _ticks++;
            txtTotal.Text = _ticks.ToString();
            var text = QRCodeHelper.DecodeQRCode(pictureBox1.Image);

            if (String.IsNullOrEmpty(text))
            {
                _falseResult++;
                txtNegative.Text = _falseResult.ToString();
            }
            else
            {
                _trueResult++;
                txtPositive.Text = _trueResult.ToString();

                timer.Stop();


                var ClanSearchRequest = new Model.Requests.ClanSearchRequest()
                {
                    QrCodeText = text
                };

                var list = await _apiService_Clan.Get <List <ClanViewRequest> >(ClanSearchRequest);



                //1.QR Kod nije prepoznatljiv
                if (list.Count == 0)
                {
                    textMain = "Pristup ogranicen";
                    textSide = "QR kod koji ste prikazali nije prepoznatljiv ! ";
                    CameraStopSetup(textMain, textSide);
                    PanelRed();
                    playBeep(BeepNotOK);
                    return;
                }

                var clan = list.FirstOrDefault();



                //2.QR Kod se ne moze ocitat
                //event se pozove nakon 10 sekundi.. iznad



                //3.QR Kod je prepoznat i sve je u redu u vezi clanarina
                //4.QR Kod je prepoznat ali clan ima ne podmirenih obaveza
                //Prvo korisnik treba imati clanarinu za dati mjesec i godinu, zatim
                if (clan != null)
                {
                    DateTime dateTime                 = DateTime.Now;
                    var      DanUSedmici              = dateTime.DayOfWeek;
                    var      DanUSedmiciString        = "";
                    bool     pristupDatimDanomOdobren = false;
                    switch (Convert.ToInt32(DanUSedmici))
                    {
                    case 0: { DanUSedmiciString = "Nedjelja"; } break;

                    case 1: { DanUSedmiciString = "Ponedjeljak"; } break;

                    case 2: { DanUSedmiciString = "Utorak"; } break;

                    case 3: { DanUSedmiciString = "Srijeda"; } break;

                    case 4: { DanUSedmiciString = "Cetvrtak"; } break;

                    case 5: { DanUSedmiciString = "Petak"; } break;

                    case 6: { DanUSedmiciString = "Subota"; } break;

                    default: { DanUSedmiciString = "Nepoznato"; } break;
                    }

                    var clanarinaSearchRequest = new ClanarinaSearchRequest()
                    {
                        ClanID         = clan.Id,
                        UplataZaGodinu = dateTime.Year,
                        UplataZaMjesec = dateTime.Month
                    };
                    var clanarinaList = await _apiService_Clanarina.Get <List <Model.Clanarina> >(clanarinaSearchRequest);

                    if (clanarinaList.Count == 0)
                    {
                        textMain = "Pristup ogranicen";
                        textSide = "Niste uplatili clanarinu za " + dateTime.Month + ". mjesec " + dateTime.Year + ". godine";
                        CameraStopSetup(textMain, textSide);
                        PanelRed();
                        playBeep(BeepNotOK);

                        return;
                    }
                    var clanarina = clanarinaList[0];
                    var paketPristupniDaniSearchRequest = new PaketPristupniDaniSearchRequest()
                    {
                        PaketId = clanarina.Paket.Id,
                    };
                    var paketPristupniDaniList = await _apiService_PaketPristupniDani.Get <List <Model.PaketPristupniDani> >(paketPristupniDaniSearchRequest);//vraca 0 rezultata


                    //Gledamo ima li pristup datim danima
                    foreach (Model.PaketPristupniDani x in paketPristupniDaniList)
                    {
                        if (DanUSedmiciString == x.PristupniDani.DanUSedmici)
                        {
                            pristupDatimDanomOdobren = true;
                            break;
                        }
                    }


                    if (pristupDatimDanomOdobren == false)
                    {
                        textMain = "Pristup ogranicen";
                        textSide = "Nemate pristup Fitness centru ovim danom(" + DanUSedmiciString + ")";
                        CameraStopSetup(textMain, textSide);
                        PanelRed();
                        playBeep(BeepNotOK);
                        return;
                    }
                    else
                    {
                        //Gledamo ima li pristup u datom vremenskom intervalu
                        var paketList = await _apiService_Paket.Get <List <Model.Paket> >(new PaketSearchRequest()
                        {
                            Id = clanarina.PaketId
                        });

                        var paket = paketList[0];
                        if (paket.NeogranicenPristup == true)
                        {
                            textMain = "Pristup odobren";
                            textSide = "Dobrodošli!";
                            CameraStopSetup(textMain, textSide);
                            PanelGreen();
                            playBeep(BeepOK);
                            return;
                        }

                        var DateTimeUsporedni = new DateTime(clanarina.Paket.VrijemePristupaOd.Value.Year,
                                                             clanarina.Paket.VrijemePristupaOd.Value.Month,
                                                             clanarina.Paket.VrijemePristupaOd.Value.Day,
                                                             dateTime.Hour,
                                                             dateTime.Minute,
                                                             clanarina.Paket.VrijemePristupaOd.Value.Second,
                                                             clanarina.Paket.VrijemePristupaOd.Value.Millisecond);
                        if (DateTimeUsporedni > clanarina.Paket.VrijemePristupaOd && clanarina.Paket.VrijemePristupaDo > DateTimeUsporedni)
                        {
                            textMain = "Pristup odobren";
                            textSide = "Dobrodošli!";
                            CameraStopSetup(textMain, textSide);
                            PanelGreen();
                            playBeep(BeepOK);
                            return;
                        }
                        else
                        {
                            textMain = "Pristup ogranicen";
                            textSide = "Pristup imate samo u terminu od " + clanarina.Paket.VrijemePristupaOd.Value.ToShortTimeString() + " do " + clanarina.Paket.VrijemePristupaDo.Value.ToShortTimeString();
                            CameraStopSetup(textMain, textSide);
                            PanelRed();
                            playBeep(BeepNotOK);
                            return;
                        }
                    }
                }
            }
        }