Exemplo n.º 1
0
 public void RestoreDatabaseDump()
 {
     try
     {
         if (Settings.Default.UseMongoServer)
         {
             ElvaSettings.getInstance().RestorData();
             Thread.Sleep(10000);
         }
     }
     catch (Exception s)
     {
         SetError(s.Message);
     }
     //var result =  DataHelpers.ShowMessage("Voulez-vous installer les données initiales (Configuration, Taxes, Paramétres achats & ventes...etc)", "Demo Data", MessageBoxButton.YesNo, MessageBoxImage.Question);
     //if (result == MessageBoxResult.Yes)
     //{
     //    ElvaSettings.getInstance().RestorData();
     //}
     //else
     //{
     //    // Comptes
     //    FrameworkManager.SetupAccounts();
     //}
 }
Exemplo n.º 2
0
        public void Print()
        {
            var file = DoCreate(false, "WORD");
            var verb = "Printto";

            if (string.IsNullOrEmpty(file))
            {
                return;
            }


            var defaultPrinter = ElvaSettings.getInstance().ImprimanteDefault;

            if (string.IsNullOrEmpty(defaultPrinter))
            {
                DataHelpers.ShowMessage(_("Aucune imprimante par default, modifier les paramétres"));
                verb = "Print";
            }

            try
            {
                ProcessStartInfo info = new ProcessStartInfo(file);
                info.Arguments      = "\"" + defaultPrinter + "\"";
                info.Verb           = verb;
                info.CreateNoWindow = true;
                info.WindowStyle    = ProcessWindowStyle.Hidden;
                Process.Start(info);
            }
            catch (Exception s)
            {
                DataHelpers.ShowMessage(s.Message);
            }

            try { this.RequestClose(); } catch { }
        }
Exemplo n.º 3
0
        public static void CreateLicenceStandard(string username, string email)
        {
            var old = File.Exists("License.lic");

            if (old)
            {
                File.Delete("License.lic");
            }

            var license = License.New()
                          .As(LicenseType.Standard)
                          .LicensedTo(username, email)
                          .CreateAndSignWithPrivateKey(PrivateKey, "15021991");

            license.Customer.Email = email;
            license.Customer.Name  = username;
            license.Sign(PrivateKey, "15021991");
            license.Type = LicenseType.Standard;


            var settings = new ElvaSettings().getInstance();

            settings.UserName = username;
            settings.Email    = email;
            settings.Save();
            File.WriteAllText("License.lic", license.ToString(), Encoding.UTF8);
        }
Exemplo n.º 4
0
        public static void CreateLicenceTrial(string username, string email)
        {
            var old = File.Exists("License.lic");

            if (old)
            {
                File.Delete("License.lic");
            }

            var license = License.New()
                          .As(LicenseType.Trial)
                          .ExpiresAt(DateTime.Now.AddDays(14))
                          .LicensedTo(username, email)
                          .CreateAndSignWithPrivateKey(PrivateKey, "15021991");

            license.Expiration     = DateTime.Now.AddDays(14);
            license.Customer.Email = email;
            license.Customer.Name  = username;
            license.Sign(PrivateKey, "15021991");
            license.Type = LicenseType.Trial;
            var settings = new ElvaSettings().getInstance();

            settings.UserName = username;
            settings.Email    = email;

            settings.DemoUsed = true;
            settings.Save();

            File.WriteAllText("License.lic", license.ToString(), Encoding.UTF8);
        }
Exemplo n.º 5
0
        protected override void Configure()
        {
            try
            {
                SetupDb();
                // Check and update modules
                var updateModules = Properties.Settings.Default.UpdateModules;
                FrameworkManager.UpdateModules(updateModules);

                // Init admin
                FrameworkManager.AdminExists(true);

                // Clean data and files
                FrameworkManager.CleanFiles();

                // Reload new modules
                FrameworkManager.ReloadModules();

                // Load Settings in memory
                DataHelpers.PosSettings = PosSettings.getInstance();

                var viewManager = this.Container.Get <ViewManager>();
                var setting     = new ElvaSettings().getInstance();
                DataHelpers.Settings = setting;
            }
            catch (Exception s)
            {
                MessageBox.Show(s.Message);
            }
        }
Exemplo n.º 6
0
        /// <summary>
        /// Move to the Next page
        /// </summary>
        public void Next()
        {
            // Check if we're in the last page
            if (indexPage == LastPageIndex)
            {
                // save everything we're done
                ElvaSettings settings = DataHelpers.Settings;

                //if (SelectedPaye == null)
                //{
                //    DataHelpers.ShowMessage(_("Culture is empty"));
                //    return;
                //}

                settings.Societe        = Entreprise;
                settings.Email          = Email;
                settings.EmailPwd       = EmailPassword;
                settings.AppInitialized = true;


                // Edit the user password
                User user = DS.db.GetOne <User>(a => a.Name == "Admin");
                if (null != user && !string.IsNullOrEmpty(PasswordAdmin))
                {
                    user.Password = PasswordAdmin;
                    user.Save();
                }

                TransfertLogo();
                // todo: add mapping between email provider and email port, host adresse
                settings.Save();

                // Ask if we should close the window
                var _doIExit = _windowManager.ShowMessageBox(_("Voulez-vous fermer la fenêtre ?"), _("Fermeture"), System.Windows.MessageBoxButton.YesNo);
                if (_doIExit == System.Windows.MessageBoxResult.Yes)
                {
                    // Close the Assistant
                    this.RequestClose();
                    return;
                }
            }

            // Movin to th next page
            else
            {
                // Valdiate this page before moving to next one
                ValidatePage(indexPage);

                // Select next tabs
                indexPage++;
                NotifyOfPropertyChange("indexPage");

                // Update next button value text
                UpdateButtonNextValue();
            }
        }
Exemplo n.º 7
0
        public void PrintReport()
        {
            var posPrinter = ElvaSettings.getInstance().ImprimanteDefault;

            if (string.IsNullOrEmpty(posPrinter))
            {
                DataHelpers.ShowMessage("Imprimante introuvable, vérifier les paramétres");
                return;
            }

            File.WriteAllText("report.txt", $"{this.Report.ReportName}\n");

            using (var file = new StreamWriter("report.txt", true))
            {
                var typeRepor = DataHelpers.ShowMessage("Inclure les quantités vendues", "Type rapport", MessageBoxButton.YesNo, MessageBoxImage.Question);
                if (typeRepor == MessageBoxResult.Yes)
                {
                    lines = Report.GetReport().SelectMany(z => z.Children);
                }
                else
                {
                    lines = Report.GetReport().Where(z => !z.CL1.Contains("Détails")).SelectMany(z => z.Children);
                }

                foreach (var item in lines)
                {
                    file.WriteLine($"{item.CL1}\n{item.CL2} {item.CL3}\n___________________");
                }
                file.Close();
                Process p = null;
                try
                {
                    p = new Process();
                    p.StartInfo.FileName = Path.GetFullPath("report.txt");

                    var verbs = p.StartInfo.Verbs;
                    foreach (var v in verbs)
                    {
                        Console.WriteLine(v);
                    }
                    p.StartInfo.Verb            = "Print";
                    p.StartInfo.Arguments       = "\"" + posPrinter + "\"";
                    p.StartInfo.Verb            = "Printto";
                    p.StartInfo.WindowStyle     = ProcessWindowStyle.Hidden;
                    p.StartInfo.UseShellExecute = true;
                    p.Start();
                    p.WaitForExit();
                }
                catch (Exception e)
                {
                    DataHelpers.ShowMessage(e.Message);
                }
            }
        }
Exemplo n.º 8
0
        public void VlidateLicence()
        {
            if (string.IsNullOrWhiteSpace(licenceFile))
            {
                MessageBox.Show("Charger votre licence d'abord");
                return;
            }
            if (string.IsNullOrWhiteSpace(clePublic))
            {
                MessageBox.Show("Clé public obligatoire!");
                return;
            }

            if (string.IsNullOrWhiteSpace(email) || string.IsNullOrEmpty(userName))
            {
                MessageBox.Show("Vérifer nom d'utilsateur ou email");
                return;
            }

            using (var publicK = new StreamWriter("public-lcs"))
            {
                publicK.Write(clePublic);
                publicK.Close();
            }


            File.Copy(licenceFile, "License.lic", true);

            try
            {
                if (FrameworkManager.ValidateLicence(clePublic, userName, email))
                {
                    MessageBox.Show("Licence validée");
                    var settings = new ElvaSettings().getInstance();
                    settings.UserName = userName;
                    settings.Email    = email;
                    settings.Save();
                    IsValide = true;
                    this.RequestClose();
                }
                else
                {
                    IsValide = false;
                    MessageBox.Show("Licence invalide");
                }
            }
            catch (Exception s)
            {
                MessageBox.Show(s.Message);
            }
        }
Exemplo n.º 9
0
        private void LoadSettingsInDatahelpers()
        {
            try
            {
                var setting = ElvaSettings.getInstance();
                DataHelpers.Settings = setting;

                DataHelpers.NotAllowedProperties = typeof(ModelBase <>).GetProperties().Select(z => z.Name).ToList();
                DataHelpers.NotAllowedProperties = typeof(Document).GetProperties().Select(z => z.Name).ToList();
            }
            catch (Exception s)
            {
                SetError(s.Message);
            }
        }
Exemplo n.º 10
0
 public void SetDefaultCultureOnThread()
 {
     try
     {
         setting = ElvaSettings.getInstance();
         if (!string.IsNullOrWhiteSpace(setting?.Pays))
         {
             ElvaSettings.SetGlobalCulture(setting?.Pays);
         }
     }
     catch (Exception s)
     {
         SetError(s.Message);
     }
 }
Exemplo n.º 11
0
        public void Save()
        {
            try
            {
                Validate();

                var settings = ElvaSettings.getInstance();
                //settings.LangeDefault = SelectedLang;
                settings.Pays = SelectedLang?.Name;// CultureInfo.CurrentCulture?.Name;
                settings.Save();
                RequestClose(true);
            }
            catch (Exception s)
            {
                DataHelpers.ShowMessageError(s);
                return;
            }
        }
Exemplo n.º 12
0
        public void ActivateDemo()
        {
            if (string.IsNullOrWhiteSpace(clePublic))
            {
                MessageBox.Show("Clé public obligatoire!");
                return;
            }
            using (var publicK = new StreamWriter("public-lcs"))
            {
                publicK.Write(clePublic);
                publicK.Close();
            }

            var used = new ElvaSettings().getInstance().DemoUsed;

            if (false)
            {
                MessageBox.Show("Licence demo expirée, Contactez votre fournisseur/ 0665 97 76 79 / [email protected]");
                return;
            }
            else
            {
                FrameworkManager.CreateLicenceTrial(userName, email);
                try
                {
                    if (FrameworkManager.ValidateLicence(clePublic, userName, email))
                    {
                        MessageBox.Show("Licence validée");
                        IsValide = true;
                        this.RequestClose();
                    }
                    else
                    {
                        MessageBox.Show("Licence invalide");
                        IsValide = false;
                    }
                }
                catch (Exception s)
                {
                    MessageBox.Show(s.Message);
                }
            }
        }
Exemplo n.º 13
0
        public void CheckDefaultLang()
        {
            var setting = ElvaSettings.getInstance();

            if (string.IsNullOrWhiteSpace(setting?.Pays))
            {
                Execute.OnUIThreadSync(() =>
                {
                    try
                    {
                        var langChoose  = new LangViewModel();
                        RestartAtFinish = DataHelpers.windowManager.ShowDialog(langChoose);
                    }
                    catch (Exception s)
                    {
                        DataHelpers.ShowMessageError(s);
                        return;
                    }
                });
            }
        }
Exemplo n.º 14
0
        protected override void OnLaunch()
        {
            try
            {
                base.OnLaunch();
                FrameworkManager.CreateCulture();

                // TEMP
                // FrameworkManager.GenerateLicence();
                // FrameworkManager.CreateLicenceTrial("admin", "admin");
                // FrameworkManager.CreateLicenceStandard("pos", "*****@*****.**");

                // Check AppInit

                var setting = new ElvaSettings().getInstance();

                FrameworkManager.CheckValidation();

                if (setting.AppInitialized == false)
                {
                    MessageBox.Show("Configuration de premiére utilisation");

                    // Setup modules
                    FrameworkManager.UpdateModules();

                    // setup series
                    FrameworkManager.CreateSeries();

                    setting.AppInitialized = true;
                    setting.Save();

                    MessageBox.Show("Configuration terminée");
                }
            }
            catch (Exception s)
            {
                MessageBox.Show(s.Message);
            }
        }
Exemplo n.º 15
0
        public void InstallDefaultDatabase()
        {
            try
            {  // Prepare database
                var adr = Properties.Settings.Default.MongoServerSettings;
                var db  = Properties.Settings.Default.dbUrl;

                bool         addDefault      = false;
                DbSourceLink DefaultDbSource = new DbSourceLink();
                // CHeck if DefaultDB exist
                var dblinks = DS.db.GetAll <DbSourceLink>(a => true) as IEnumerable <DbSourceLink>;
                if (dblinks != null)
                {
                    if (!dblinks.Select(a => a.DbName).Contains("Default"))
                    {
                        DefaultDbSource          = new DbSourceLink();
                        DefaultDbSource.DbName   = "Default";
                        DefaultDbSource.SourceIp = adr;
                        addDefault = true;
                    }
                }
                setting = ElvaSettings.getInstance();
                if (setting != null)
                {
                    if (addDefault)
                    {
                        DefaultDbSource.Save();
                    }

                    if (setting.DbSourceLink.IsValide())
                    {
                        // i have db set
                        var DbSource = DS.db.GetOne <DbSourceLink>(a => a.Id == setting.DbSourceLink) as DbSourceLink;
                        if (DbSource != null)
                        {
                            Properties.Settings.Default.MongoServerSettings = DbSource.SourceIp;
                            Properties.Settings.Default.dbUrl = DbSource.DbName;
                            DataHelpers.DbAdresse             = DbSource.SourceIp;
                            DataHelpers.DbName = DbSource.DbName;
                            DS._db             = null;
                        }
                        else
                        {
                            SetDefaultDB();
                        }
                    }
                    else
                    {
                        SetDefaultDB();
                    }
                }
                else
                {
                    SetDefaultDB();
                }
            }
            catch (Exception s)
            {
                SetError(s.Message);
                Console.Write(s.Message);
                SetDefaultDB();
            }
        }
Exemplo n.º 16
0
        public void OpenSettings()
        {
            var settings = ElvaSettings.getInstance();

            DataHelpers.Shell.OpenScreenAttach(settings, _("home.app.btn.settings"));
        }
Exemplo n.º 17
0
        private void Worker_DoWork(object sender, DoWorkEventArgs e)
        {
            DoCheckApplicationFolders();

            SetNote("startup.label.loadingdb");
            StartServerDatabase();
            Worker.ReportProgress(10);

            // SetNote("startup.label.checkingdb");
            //if( EnsureServerIsRunning() == false)
            // {
            //     SetError("Server Off!");
            //     return;
            // }


            SetNote("startup.label.loadingmodule");
            LoadModulesDll();
            Worker.ReportProgress(20);

            SetNote("startup.label.logging");
            StartLogger();


            SetNote("startup.label.data");
            LoadTypesToDatahelper();

            SetNote("startup.label.initdb");
            InstallDefaultDatabase();
            Worker.ReportProgress(30);

            SetNote("startup.label.cultures");
            SetDefaultCultureOnThread();
            Worker.ReportProgress(40);

            SetNote("startup.label.lang");
            CheckDefaultLang();
            Worker.ReportProgress(55);

            SetNote("startup.label.checkmodules");
            ReloadAllModules();



            var setting = ElvaSettings.getInstance();

            if (setting.IsRestheatUsed)
            {
                StartServerApi();
            }

            if (setting.AppInitialized == false)
            {
                Mode = StartupMode.ALL;
            }
            else
            {
                Mode = StartupMode.LAUNCH;
            }

            if (Mode == StartupMode.ALL)
            {
                SetNote("startup.label.init");
                RestoreDatabaseDump();
                Worker.ReportProgress(50);

                SetNote("startup.label.data");
                FrameworkManager.UpdateModules();
                Worker.ReportProgress(60);

                SetNote("startup.label.series");
                InitSeries();
                Worker.ReportProgress(70);

                // SetNote("Lancement assistant");
                //Execute.PostToUIThread(() => OpenAppAssistant());
                // Worker.ReportProgress(80);

                //Execute.OnUIThread(() => { _windowManager.ShowMessageBox("Vous devez relancer l'application aprés cette configuration");  });
            }
            else
            {
                SetNote("startup.label.lang");
                SetDefaultLang();
                Worker.ReportProgress(50);
            }

            Worker.ReportProgress(60);
            SetNote("startup.label.checkadmin");
            InstallDefaultUser();

            SetNote("startup.label.data");
            ReloadAllModules();
            Worker.ReportProgress(60);

            SetNote("startup.label.temp");
            CleanTempFiles();
            Worker.ReportProgress(70);

            SetNote("startup.label.loadingmodule");
            CheckForNewModules();
            Worker.ReportProgress(80);

            LoadSettingsInDatahelpers();
            Worker.ReportProgress(90);

            SetNote("startup.label.updates");
            CheckForUpdates();
            Worker.ReportProgress(95);
        }