Beispiel #1
0
        private void HashPassword(TextBox txtBox)
        {
            try
            {
                string content = txtBox.Text;

                if (content.Contains("Password("))
                {
                    List<string> list = new List<string>(
                           content.Split(new string[] { "\r\n" },
                           StringSplitOptions.RemoveEmptyEntries));

                    int found = 0;
                    for (int i = 0; i < list.Count; i++)
                    {
                        if (list[i].StartsWith("Password"))
                        {
                            string str = Regex.Match(list[i], @"\(([^)]*)\)").Groups[1].Value;
                            if (str.Length > 1 && str.Length < 20 && !Regex.IsMatch(str, @"^\d+$"))
                            {
                                SimpleAES simple = new SimpleAES();
                                string hash = simple.EncryptToString(str);
                                list[i] = "Password(" + hash + ")";
                                found++;
                            }
                        }
                    }
                    if (found > 0)
                        SendMessage(found + " passord kryptert.", Color.Green);
                    else
                        SendMessage("Passord allerede kryptert eller i feil format.");

                    txtBox.Text = string.Join(Environment.NewLine, list.ToArray());
                }
                else
                    SendMessage("Fant ingen linjer med Password()", Color.Red);
            }
            catch (Exception ex)
            {
                Log.Unhandled(ex);
            }
        }
Beispiel #2
0
        private bool ExportSettings()
        {
            try
            {
                // Fane: GENERELT -------------------------------------------------------------------------
                // GENERELT - Elguide
                if (textBoxAvd.Text.Length == 4)
                    main.appConfig.Avdeling = Convert.ToInt32(textBoxAvd.Text);
                main.appConfig.csvElguideExportFolder = textBoxCSVexportFolder.Text;

                // GENERELT - Import
                if (comboBoxImport.SelectedIndex == 0)
                    main.appConfig.importSetting = "Normal";
                if (comboBoxImport.SelectedIndex == 1)
                    main.appConfig.importSetting = "Full";
                if (comboBoxImport.SelectedIndex == 2)
                    main.appConfig.importSetting = "FullFavoritt";

                // GENERELT - Program
                main.appConfig.WindowMinimizeToTray = checkMinimizeToTray.Checked;
                main.appConfig.WindowExitToTray = checkExitToTray.Checked;
                main.appConfig.useSqlCache = checkBoxActivateSqlCache.Checked;
                main.appConfig.showAdvancedFunctions = checkBoxAdvanced.Checked;
                main.appConfig.experimental = checkBoxActivateExperimental.Checked;

                // Fane: RANKING --------------------------------------------------------------------------
                // RANKING - Utseende
                main.appConfig.kolInntjen = checkBoxRankUtseendeInntjen.Checked;
                main.appConfig.kolProv = checkVisProv.Checked;
                main.appConfig.kolRabatt = kolRabattCheckBox.Checked;
                main.appConfig.kolSalgspris = kolOmsetningCheckBox.Checked;
                main.appConfig.kolVarekoder = !checkBoxKombkol.Checked;
                main.appConfig.sortIndex = Convert.ToInt32(comboBoxRankingSort.SelectedIndex.ToString());
                main.appConfig.rankingAvdelingShowAll = checkRankAvdShowAll.Checked;

                // RANKING - Hitrate krav
                main.appConfig.kravHitrateNettbrett = numericKravHitrateNettbrett.Value;
                main.appConfig.kravHitrateData = numericKravHitrateData.Value;
                main.appConfig.kravHitrateAudioVideo = numericKravHitrateAudioVideo.Value;
                main.appConfig.kravHitrateTele = numericKravHitrateTele.Value;
                main.appConfig.kolKravNettbrett = checkKravNettbrett.Checked;
                main.appConfig.kolKravData = checkKravData.Checked;
                main.appConfig.kolKravAudioVideo = checkKravAudioVideo.Checked;
                main.appConfig.kolKravTele = checkKravTele.Checked;

                // RANKING - Valg
                main.appConfig.ignoreSunday = checkBoxIgnoreSunday.Checked;
                main.appConfig.rankingShowLastWeek = checkBoxRankingShowLastWeek.Checked;
                main.appConfig.rankingCompareLastyear = comboBoxRankingFjoraaret.SelectedIndex;
                main.appConfig.rankingCompareLastmonth = comboBoxRankingForrigeMaaned.SelectedIndex;

                // RANKING - Vinnprodukter
                main.appConfig.vinnDatoFraTil = checkBoxVinn.Checked;
                main.appConfig.vinnFrom = dateTimeVinnFrom.Value;
                main.appConfig.vinnTo = dateTimeVinnTo.Value;
                main.appConfig.vinnSisteDagVare = checkBoxVinnSisteDagVare.Checked;
                main.appConfig.vinnVisVarekoder = checkBoxVinnVisVarekoder.Checked;
                main.appConfig.vinnVisVarekoderExtra = checkBoxVinnVisVarekoderEkstra.Checked;
                main.appConfig.vinnEnkelModus = checkBoxVinnSimple.Checked;
                main.appConfig.vinnVisAftersales = checkBoxVinnVisAftersales.Checked;

                // Fane: PDF ----------------------------------------------------------------------------
                // PDF - PDF Export
                main.appConfig.pdfVisOversikt = checkBoxPDFoversikt.Checked;
                main.appConfig.pdfVisToppselgere = checkBoxPDFtoppselgere.Checked;
                main.appConfig.pdfVisButikk = checkBoxPDFbutikk.Checked;
                main.appConfig.pdfVisKnowHow = checkBoxPDFknowhow.Checked;
                main.appConfig.pdfVisData = checkBoxPDFdata.Checked;
                main.appConfig.pdfVisAudioVideo = checkBoxPDFaudiovideo.Checked;
                main.appConfig.pdfVisTele = checkBoxPDFtele.Checked;
                main.appConfig.pdfVisLister = checkBoxPDFlister.Checked;
                main.appConfig.pdfVisVinnprodukter = checkBoxPDFvinnprodukter.Checked;

                main.appConfig.pdfVisTjenester = checkBoxPDFtjenester.Checked;
                main.appConfig.pdfVisSnittpriser = checkBoxPDFsnittpriser.Checked;

                main.appConfig.pdfVisObsolete = checkBoxPDFobsolete.Checked;
                main.appConfig.pdfVisObsoleteList = checkBoxPDFobsoleteList.Checked;
                main.appConfig.pdfVisWeekly = checkBoxPDFweekly.Checked;
                main.appConfig.pdfVisPrisguide = checkBoxPDFprisguide.Checked;

                main.appConfig.pdfVisService = checkBoxPdfVisService.Checked;

                main.appConfig.pdfVisBudsjett = checkBoxPdfVisBudget.Checked;

                // PDF - Format
                main.appConfig.pdfLandscape = radioButtonPDForiantationSide.Checked;
                main.appConfig.pdfZoom = numericPDFzoon.Value;
                main.appConfig.pdfExpandedGraphs = checkBoxPdfUtvidetGrafer.Checked;
                main.appConfig.pdfTableOfContent = checkBoxPdfToc.Checked;

                // PDF - PDF Export
                main.appConfig.pdfExportFolder = textBoxExportPDF.Text;
                main.appConfig.pdfExport = checkPDFExport.Checked;

                // Fane: TOPPSELGERE -------------------------------------------------------------------
                // TOPPSELGERE - Sortering
                main.appConfig.bestofSortTjenesterSecondary = checkBoxToppselgereSortTjenesterInntjen.Checked;
                main.appConfig.bestofSortInntjenSecondary = checkBoxToppselgereSortInntjening.Checked;

                // TOPPSELGERE - Antall
                main.appConfig.bestofTallInntjen = comboBoxAntallInntjen.SelectedIndex;
                main.appConfig.bestofTallFinans = comboBoxAntallFinans.SelectedIndex;
                main.appConfig.bestofTallStrom = comboBoxAntallStrom.SelectedIndex;
                main.appConfig.bestofTallTjen = comboBoxAntallRTG.SelectedIndex;
                main.appConfig.bestofTallTA = comboBoxAntallTA.SelectedIndex;

                // TOPPSELGERE - Annet
                main.appConfig.bestofCompareChange = checkBoxBestofCompareChange.Checked;
                main.appConfig.bestofVisBesteLastYear = checkBoxToppselgereVisBesteFjoråret.Checked;
                main.appConfig.bestofVisBesteLastYearTotal = radioButtonToppselgereVisBesteFjoråretTotalt.Checked;
                main.appConfig.bestofVisBesteLastOpenday = checkBoxTopplisteVisBesteSisteåpningsdag.Checked;
                main.appConfig.bestofHoppoverKasse = checkBoxBestofHoppoverKasse.Checked;

                // TOPPSELGERE - Lister
                main.appConfig.listerVisInntjen = checkBoxListerInntjening.Checked;
                main.appConfig.listerVisAccessories = checkBoxListerAccessories.Checked;
                main.appConfig.listerMaxLinjer = Convert.ToInt32(numericListerMax.Value);

                // Fane: OVERSIKT ---------------------------------------------------------------------
                // OVERSIKT - Generelt
                main.appConfig.oversiktFilterToDepartments = checkBoxOversiktBegrens.Checked;
                main.appConfig.oversiktHideAftersales = checkBoxOversiktHideAftersales.Checked;
                main.appConfig.oversiktHideKitchen = checkBoxOversiktHideKitchen.Checked;

                // OVERSIKT - Krav
                main.appConfig.oversiktKravVis = checkOversiktVisKrav.Checked;
                main.appConfig.oversiktKravFinansAntall = checkKravAntallFinans.Checked;
                main.appConfig.oversiktKravModAntall = checkKravAntallMod.Checked;
                main.appConfig.oversiktKravStromAntall = checkKravAntallStrom.Checked;
                main.appConfig.oversiktKravRtgsaAntall = checkKravAntallRtgsa.Checked;
                main.appConfig.oversiktKravFinans = checkKravFinans.Checked;
                main.appConfig.oversiktKravMod = checkKravMod.Checked;
                main.appConfig.oversiktKravStrom = checkKravStrom.Checked;
                main.appConfig.oversiktKravRtgsa = checkKravRtgsa.Checked;
                main.appConfig.oversiktKravMtd = checkKravMTD.Checked;
                main.appConfig.oversiktKravMtdShowTarget = checkKravMtdShowTarget.Checked;

                // OVERSIKT - Format og logo
                if (String.IsNullOrEmpty(visningNullTextBox.Text))
                    main.appConfig.visningNull = "&nbsp;";
                else
                    main.appConfig.visningNull = visningNullTextBox.Text;
                main.appConfig.visningJevnfarge = checkBoxJevnfarge.Checked;
                main.appConfig.kolForkort = checkBoxTruncate.Checked;

                // Fane: FAVORITTER --------------------------------------------------------------------------
                // FAVORITTER - Favoritter
                main.appConfig.favAvdeling = "";
                for (int i = listBoxFavAvd.Items.Count; i-- > 0; )
                    if (String.IsNullOrEmpty(listBoxFavAvd.Items[i].ToString()))
                        listBoxFavAvd.Items.RemoveAt(i);
                for (int i = 0; i < listBoxFavAvd.Items.Count; i++)
                {
                    if (listBoxFavAvd.Items[i].ToString().StartsWith(main.appConfig.Avdeling.ToString()))
                        continue;
                    if (!String.IsNullOrEmpty(listBoxFavAvd.Items[i].ToString()))
                        main.appConfig.favAvdeling += listBoxFavAvd.Items[i].ToString().Substring(0, 4);
                    if ((i + 1) < listBoxFavAvd.Items.Count)
                        main.appConfig.favAvdeling += ",";
                }
                main.appConfig.favVis = checkBoxFav.Checked;

                // Fane: AVANSERT ---------------------------------------------------------------------------
                // AVANSERT - hoverdprodukt varegrupper
                if (VerifyStringToIntArray(textBoxHovedMda.Text))
                    main.appConfig.mainproductListMda = StringToIntArray(textBoxHovedMda.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                if (VerifyStringToIntArray(textBoxHovedAv.Text))
                    main.appConfig.mainproductListAv = StringToIntArray(textBoxHovedAv.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                if (VerifyStringToIntArray(textBoxHovedSda.Text))
                    main.appConfig.mainproductListSda = StringToIntArray(textBoxHovedSda.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                if (VerifyStringToIntArray(textBoxHovedTele.Text))
                    main.appConfig.mainproductListTele = StringToIntArray(textBoxHovedTele.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                if (VerifyStringToIntArray(textBoxHovedData.Text))
                    main.appConfig.mainproductListData = StringToIntArray(textBoxHovedData.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                // AVANSERT - tilbehør hovedprodukter
                if (VerifyStringToIntArray(textBoxAccMda.Text))
                    main.appConfig.accessoriesListMda = StringToIntArray(textBoxAccMda.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                if (VerifyStringToIntArray(textBoxAccAv.Text))
                    main.appConfig.accessoriesListAv = StringToIntArray(textBoxAccAv.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                if (VerifyStringToIntArray(textBoxAccSda.Text))
                    main.appConfig.accessoriesListSda = StringToIntArray(textBoxAccSda.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                if (VerifyStringToIntArray(textBoxAccTele.Text))
                    main.appConfig.accessoriesListTele = StringToIntArray(textBoxAccTele.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                if (VerifyStringToIntArray(textBoxAccData.Text))
                    main.appConfig.accessoriesListData = StringToIntArray(textBoxAccData.Text);
                else
                {
                    tabControlMain.SelectedTab = tabPageAvansert;
                    Log.Alert("Varegruppe skal være på tre siffer og ikke inneholde bokstaver.\nFlere varegrupper deles med komma.", "Feil varegruppe format", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }

                // Fane: E-POST
                // E-POST - Server
                main.appConfig.epostSMTPserver = textBoxEpostSMTPserver.Text;
                main.appConfig.epostSMTPport = Convert.ToInt32(textBoxEpostSMTPport.Text);
                main.appConfig.epostSMTPssl = checkBoxEmailUseSsl.Checked;
                main.appConfig.epostBrukBcc = checkBoxEmailUseBcc.Checked;
                if (!IsValidEmail(textBoxEpostAvsender.Text) && !String.IsNullOrEmpty(textBoxEpostAvsender.Text))
                {
                    tabControlMain.SelectedTab = tabPageEpost;
                    textBoxEpostAvsender.ForeColor = Color.Red;
                    Log.Alert("E-post avsender er ikke i gyldig format.\nEksempel: [email protected]", "Ugyldig E-post adresse", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    return false;
                }
                else
                {
                    textBoxEpostAvsender.ForeColor = Color.Black;
                    main.appConfig.epostAvsender = textBoxEpostAvsender.Text;
                }
                main.appConfig.epostAvsenderNavn = textBoxEpostAvsenderNavn.Text;
                main.appConfig.epostPOP3server = textBoxEpostPOP3server.Text;
                main.appConfig.epostPOP3port = Convert.ToInt32(textBoxEpostPOP3port.Text);
                if (main.appConfig.epostPOP3port == 0)
                    main.appConfig.epostPOP3port = 995;
                main.appConfig.epostPOP3ssl = checkBoxPOP3UseSsl.Checked;
                main.appConfig.epostPOP3username = textBoxEpostPOP3bruker.Text;
                var aes = new SimpleAES();
                if (!String.IsNullOrEmpty(textBoxEpostPOP3pass.Text))
                    main.appConfig.epostPOP3password = aes.EncryptToString(textBoxEpostPOP3pass.Text);
                else
                    main.appConfig.epostPOP3password = "";

                // E-POST - Vedlegg
                main.appConfig.openXml_AllSalesRep_AutoSend = checkBoxOpenXmlSendAllSalesRep.Checked;
                main.appConfig.openXml_AllSalesRep_AutoSend_Daily = radioButtonOpenXmlAllSalesRepDaily.Checked;

                // Fane: SERVICE -------------------------------------------------------------------------
                // SERVICE - Service generelt
                main.appConfig.serviceEgenServiceFilter = textServiceEgenServiceFilter.Text;
                main.appConfig.serviceShowHistory = checkServiceShowHistory.Checked;
                main.appConfig.serviceShowHistoryGraph = checkServiceShowHistoryGraph.Checked;
                main.appConfig.serviceShowTrend = checkServiceShowTrend.Checked;
                main.appConfig.serviceHistoryDays = Convert.ToInt32(numericServiceHistoryDays.Value);
                main.appConfig.serviceFerdigServiceStats = checkBoxServiceFerdigService.Checked;
                main.appConfig.serviceFerdigServiceStatsAntall = (int)numericServiceFerdigStatsAntall.Value;

                // Fane: GRAF ---------------------------------------------------------------------------
                // GRAF - Grafikk
                main.appConfig.graphVis = checkBoxVisGrafikk.Checked;
                main.appConfig.graphScreenDPI = (float)numericGraphDPI.Value;
                main.appConfig.graphWidth = Convert.ToInt32(textBoxGraphWidth.Text);
                main.appConfig.graphExtra = checkBoxGrafikkExtra.Checked;
                main.appConfig.graphAdvanced = checkBoxGrafikkAdvanced.Checked;
                main.appConfig.graphKnowHow = checkBoxGrafikkKnowHow.Checked;
                main.appConfig.graphButikk = checkBoxGrafikkButikk.Checked;
                main.appConfig.graphData = checkBoxGrafikkData.Checked;
                main.appConfig.graphAudioVideo = checkBoxGrafikkAV.Checked;
                main.appConfig.graphTele = checkBoxGrafikkTele.Checked;
                main.appConfig.graphOversikt = checkBoxGrafikkOversikt.Checked;
                try
                {
                    var tmp = Convert.ToInt32(textBoxGraphAntall.Text);
                    if (tmp > 0 && tmp < 366)
                        main.appConfig.graphDager = tmp;
                    if (Convert.ToInt32(textBoxGraphX.Text) > 50 && Convert.ToInt32(textBoxGraphY.Text) > 50)
                    {
                        main.appConfig.graphResX = Convert.ToInt32(textBoxGraphX.Text);
                        main.appConfig.graphResY = Convert.ToInt32(textBoxGraphY.Text);
                    }
                    else
                    {
                        main.appConfig.graphResX = 2000;
                        main.appConfig.graphResY = 600;
                    }
                }
                catch
                {
                    main.appConfig.graphResX = 2000;
                    main.appConfig.graphResY = 600;
                    main.appConfig.graphDager = 40;
                }

                // Fane: LAGER ------------------------------------------------------------------------------------
                // LAGER - Generelt
                main.appConfig.storeCompareMtd = radioLagerUtviklingMTD.Checked;
                main.appConfig.dbStoreViewpoint = pickerLagerViewpoint.Value;
                main.appConfig.storeShowStoreTwo = checkBoxStoreShowStoreTwo.Checked;
                main.appConfig.storeMaxAgePrizes = (int)numericUpDownLagerPriserMaxDager.Value;

                // LAGER - Utgåtte varer
                main.appConfig.storeObsoleteListMainProductsOnly = checkLagerHovedprodukter.Checked;
                main.appConfig.storeObsoleteFilterPercent = (int)numericStoreObsoleteFilter.Value;
                main.appConfig.storeObsoleteFilterMainStoreOnly = checkBoxObsoleteFilterMainStoreOnly.Checked;
                main.appConfig.storeObsoleteSortBy = comboBoxStoreObsoleteSortBy.Text;
                main.appConfig.storeObsoleteSortAsc = checkBoxStoreObsoleteSortAsc.Checked;
                main.appConfig.storeObsoleteFilterMax = (int)numericStoreObsoleteFilterMax.Value;

                // LAGER - Prisguide.no og Ukenytt
                main.appConfig.onlinePrisguidePagesToImport = (int)numericUpDownLagerPrisguideImportPages.Value;

                // Fane: VEDLIKEHOLD -------------------------------------------------------------------------------
                // VEDLIKEHOLD - Annet
                main.appConfig.debug = checkBoxDebug.Checked;
                main.appConfig.debugSql = checkBoxDebugShowSql.Checked;

                main.SaveSettings();
                SendMessage("Innstillinger lagret.", Color.Green);
                return true;
            }
            catch (Exception ex)
            {
                SendMessage(ex.Message.ToString().Replace("\n", "").Replace("\r", ""), Color.Red);
                Log.Unhandled(ex);
                return false;
            }
        }