using System.Collections.Generic;
using Baza_Reklam.Classes.Model;

namespace Baza_Reklam
{
    /// <summary>
    /// Dane zalogowanego użytkownika.
    /// </summary>
    internal class User
    {
        private static User user;
        private int _invoiceProviderId;
        private string adresBiura;
        private string email;
        private string faxSekretariat;
        private int idAgencji;

        private string imie;
        private string kod_agenta;
        private string komSluzbowa;
        private string login;
        private string miasto;
        private string nazwaBiura;
        private string nazwisko;
        private string nrGG;
        private string password;
        private string reklamaFiles;
        private string skype;
        private string smtpServer;
        private bool _isAdmin;
        private bool st_dtp;
        private bool st_handlowiec;
        private bool st_kierownik;
        private bool st_korekta;
        private bool st_produkcja;
        private bool st_sekretarka;
        private bool st_subhandlowiec;
        private string stanowisko;

        private string symbol_agenta;
        private string symbolAgencji;

        //dane z CT pracownicy
        private string telSekretariat;
        private string telWewnetrzny;

        private int _id;
        private List<UserAgency> _userAgencyList = new List<UserAgency>();

        public int IdAgencji
        {
            get { return idAgencji; }
            set { idAgencji = value; }
        }


        public string SymbolAgencji
        {
            get { return symbolAgencji; }
            set { symbolAgencji = value; }
        }

        public string Password
        {
            get { return password; }
            set { password = value; }
        }

        public string Symbol_agenta
        {
            get { return symbol_agenta; }
            set { symbol_agenta = value; }
        }

        public string Kod_agenta
        {
            get { return kod_agenta; }
            set { kod_agenta = value; }
        }

        public string Login
        {
            get { return login; }
            set { login = value; }
        }

        public string Imie
        {
            get { return imie; }
            set { imie = value; }
        }

        public string Nazwisko
        {
            get { return nazwisko; }
            set { nazwisko = value; }
        }

        public bool IsSekretarka
        {
            get { return st_sekretarka; }
            set { st_sekretarka = value; }
        }

        public bool IsHandlowiec
        {
            get { return st_handlowiec; }
            set { st_handlowiec = value; }
        }

        public bool IsKsiegowosc
        {
            get { return st_subhandlowiec; }
            set { st_subhandlowiec = value; }
        }

        public bool IsKierownik
        {
            get { return st_kierownik; }
            set { st_kierownik = value; }
        }

        public bool IsDtp
        {
            get { return st_dtp; }
            set { st_dtp = value; }
        }

        public bool IsKorekta
        {
            get { return st_korekta; }
            set { st_korekta = value; }
        }

        public bool IsProdukcja
        {
            get { return st_produkcja; }
            set { st_produkcja = value; }
        }

        public bool IsAdmin
        {
            get { return _isAdmin; }
            set { _isAdmin = value; }
        }

        public string Stanowisko
        {
            get { return stanowisko; }
            set { stanowisko = value; }
        }

        public string Skype
        {
            get { return skype; }
            set { skype = value; }
        }

        public string Email
        {
            get { return email; }
            set { email = value; }
        }

        public string KomSluzbowa
        {
            get { return komSluzbowa; }
            set { komSluzbowa = value; }
        }

        public string TelWewnetrzny
        {
            get { return telWewnetrzny; }
            set { telWewnetrzny = value; }
        }

        public string TelSekretariat
        {
            get { return telSekretariat; }
            set { telSekretariat = value; }
        }

        public string FaxSekretariat
        {
            get { return faxSekretariat; }
            set { faxSekretariat = value; }
        }

        public string NazwaBiura
        {
            get { return nazwaBiura; }
            set { nazwaBiura = value; }
        }

        public string AdresBiura
        {
            get { return adresBiura; }
            set { adresBiura = value; }
        }

        public string ReklamaFiles
        {
            get { return reklamaFiles; }
            set { reklamaFiles = value; }
        }

        public string SmtpServer
        {
            get { return smtpServer; }
            set { smtpServer = value; }
        }

        public string Miasto
        {
            get { return miasto; }
            set { miasto = value; }
        }

        public int InvoiceProviderId
        {
            get { return _invoiceProviderId; }
            set { _invoiceProviderId = value; }
        }

        public List<UserAgency> UserAgencyList
        {
            get { return _userAgencyList; }
            set { _userAgencyList = value; }
        }

        public int Id
        {
            get { return _id; }
            set { _id = value; }
        }

        public static User Instance()
        {
            if (user == null)
            {
                user = new User();
            }
            return user;
        }
    }
}