Example #1
0
        private async void Button_Generate_Click(object sender, EventArgs e)
        {
            Button_Generate.Enabled = false;
            Label_Generating.Text   = "Generating";
            if (ComboBox_Events.SelectedIndex >= 0)
            {
                if (DialogResult.OK == FolderBrowserDialog_Generation.ShowDialog())
                {
                    eventImagesPaths.Clear();
                    string savingPath = FolderBrowserDialog_Generation.SelectedPath;

                    List <ImageEntity> imageEntities = await imageEntityServices.GetEventImageEntities(eventsEntities[ComboBox_Events.SelectedIndex]);

                    foreach (ImageEntity en in imageEntities)
                    {
                        string imagePath = await imageEntityServices.downloadEventImage(en, targetImagesDirectory);

                        eventImagesPaths.Add(Int32.Parse(en.imageNumber.ToString()), imagePath);
                    }
                    List <ImageEntity> companyImage = await imageEntityServices.GetCompanyImageEntities();



                    string companyImagePath = Directory.GetParent(workingDirectory).Parent.FullName + @"\UI\Images\inlinum-logo.png";
                    if (companyImage.Count > 0)
                    {
                        companyImagePath = await imageEntityServices.downloadCompanyImage(companyImage[0], targetImagesDirectory);
                    }

                    string eventImagePath = "";
                    if (eventImagesPaths.ContainsKey(1))
                    {
                        eventImagePath = eventImagesPaths[1];
                    }
                    string sponsorsImagePath = "";
                    if (eventImagesPaths.ContainsKey(2))
                    {
                        sponsorsImagePath = eventImagesPaths[2];
                    }
                    Event selEvent = eventsEntities[ComboBox_Events.SelectedIndex];
                    ticketCreation.MSdoc = null;
                    if (ticketCreation.MSdoc == null)
                    {
                        ticketCreation.MSdoc = new Microsoft.Office.Interop.Word.Application();
                    }
                    ticketCreation.pdfConverter = new PDFConverter(ticketCreation.MSdoc);
                    string ticketPath = ticketCreation.createTicket("Serafina", "Jones", "Daimter", "Speaker",
                                                                    selEvent.eventName, formatEventDate(selEvent.date_From), selEvent.date_From.Month, selEvent.venueName, selEvent.venueAdress,
                                                                    "IL682370000000", Color.Black, "testTicket", companyImagePath, eventImagePath, sponsorsImagePath, savingPath);
                    if (ticketCreation.MSdoc != null)
                    {
                        object Unknown = Type.Missing;
                        ticketCreation.MSdoc.Documents.Close(ref Unknown, ref Unknown, ref Unknown);
                        ticketCreation.MSdoc.Quit(ref Unknown, ref Unknown, ref Unknown);
                    }
                }

                Label_Generating.Text   = "";
                Button_Generate.Enabled = true;
            }
            else
            {
                metroMessageBoxHelper.showWarning(this, "You have not choosen event!", "Warning");
            }
        }