Example #1
0
        private void Process_Form(zeus.HelperClass.zForm frm)
        {
            // Установка таймаута бездействия в мс
            if (frm.timeout == 0)
            {
                flush_timer.Interval = 30000;
            }
            else
            {
                flush_timer.Interval = frm.timeout * 1000;
            }

            //Установка "бэкграунда"
            try
            {
                this.BackgroundImage = new Bitmap(Ipaybox.StartupPath + @"\" + frm.bgimg);
            }
            catch
            {
                Ipaybox.AddToLog(Ipaybox.Logs.Main, "Не удалось загрузить фоновое изображение");
                Dispose();
            }

            //Добавляем элементы на форму
            //Надписи, кнопки, изображения, флэшки и т.п.
            for (int i = 0; i < frm.images.Count; i++)
            {
                Ipaybox.AddImage(frm.images[i], ref img[img_count], this);
                img_count++;
            }

            for (int i = 0; i < frm.buttons.Count; i++)
            {
                Ipaybox.AddButton(frm.buttons[i], ref img[img_count], this, new EventHandler(this.Button_Click));
                img_count++;
            }

            /*if (frm.label != null)
             * {
             *
             * }*/

            for (int i = 0; i < frm.labels.Count; i++)
            {
                frm.labels[i].value = Transformtext(frm.labels[i].value);
                Ipaybox.AddLabel(frm.labels[i], ref labels[label_count], this);
                label_count++;
            }
        }
Example #2
0
        private void LoadThisForm()
        {
            /* Загрузка формы */
            try
            {
                zeus.HelperClass.zProvider provider = Ipaybox.ifc.customSets.Find(p => p.id.ToString() == Ipaybox.PRV_SELECTED_ID);
                zeus.HelperClass.zGroup    group    = Ipaybox.ifc.groups.Find(p => p.id.ToString() == Ipaybox.PRV_SELECTED_GROUP.id);
                zeus.HelperClass.zFormLink formLink = new zeus.HelperClass.zFormLink();

                //Если не найдено собственного набора форм для выбранного провайдера
                //и найден набор форм по умолчанию для группы, которой принадлежит провайдер
                //начинаем обработку набора форм по-умолчанию для группы
                if (provider == null && group != null)
                {
                    formLink = group.forms.Find(p => p.name.ToLower() == "acceptaccount");
                }
                else
                if (provider != null)
                {
                    formLink = provider.forms.Find(p => p.name.ToLower() == "acceptaccount");
                }

                if (formLink == null)
                {
                    formLink      = new zeus.HelperClass.zFormLink();
                    formLink.name = "acceptaccount";
                }
                zeus.HelperClass.zForm zform = Ipaybox.ifc.forms.Find(p => p.name.ToLower() == formLink.name.ToLower());
                Process_Form(zform);
            }
            catch
            {
                Ipaybox.NeedToUpdateConfiguration = true;
                Ipaybox.NeedUpdates.Config        = true;
                Ipaybox.Working = false;
            }
        }
Example #3
0
        private void Process_Form(zeus.HelperClass.zForm frm)
        {
            if (IsSelectedProviderOnline())
            {
                ProgressAnimator a = new ProgressAnimator();
                a.Show();
                new System.Threading.Thread(ValidateAccount).Start();

                int zz = 0;

                while (zz < 5000000 || !AccauntValidated)
                {
                    Application.DoEvents();
                    zz++;
                }

                a.Hide();
                a.Dispose();
            }
            else
            {
                IsAccountValid     = true;
                IsServiceAvailable = true;
            }

            // XmlElement root = frm;

            try
            {
                this.BackgroundImage = new Bitmap(frm.bgimg);
            }
            catch
            {
                this.BackColor = Color.FromArgb(230, 230, 230);
            }

            for (int i = 0; i < frm.images.Count; i++)
            {
                AddImage(frm.images[i], ref img[img_count]);
                img_count++;
            }
            for (int i = 0; i < frm.buttons.Count; i++)
            {
                AddButton(frm.buttons[i]);
            }
            for (int i = 0; i < frm.banners.Count; i++)
            {
                AddBanner(frm.banners[i], this, new EventHandler(this.Pic_Click));
            }
            for (int i = 0; i < frm.labels.Count; i++)
            {
                if (frm.labels[i].name == "account")
                {
                    AddLabel(frm.labels[i], ref label1, this);
                    //labels_count++;
                }
                else
                {
                    Ipaybox.AddLabel(frm.labels[i], ref labels[labels_count], this);
                    labels_count++;
                }
            }

            AddProviderImage(frm.prvImage);

            string accname  = "";
            string acctext  = "";
            string accvalue = "";

            string[] opt = Ipaybox.curPay.Options.Split('|');

            for (int i = 0; i < opt.Length; i++)
            {
                if (opt[i] != "")
                {
                    string ViewText = string.Empty;

                    if (Ipaybox.curPay.ViewText != null && Ipaybox.curPay.ViewText[i] != null && !string.IsNullOrEmpty(Ipaybox.curPay.ViewText[i].ViewText))
                    {
                        ViewText = Ipaybox.curPay.ViewText[i].ViewText;
                    }

                    string[] param = opt[i].Split('%');
                    accname  = param[0].ToUpper();
                    acctext += accname + ": " + (string.IsNullOrEmpty(ViewText) ? param[2] : ViewText) + "\r\n";
                    //AddLabel(param[0] + ": " + param[2], new Point(100, 200 + y), "Times New Roman", "18","255;255;255");
                    if (param[1] == "account")
                    {
                        accvalue = param[2];
                    }
                }
            }
            //AddLabel(acctext, new Point(100, 200), "Times New Roman", "18", "255;255;255", "");

            label1.Text = acctext;

            if (withProviderName)
            {
                //label1.TextAlign = ContentAlignment.MiddleCenter;
                label1.Text = "ПОЛУЧАТЕЛЬ: " + Ipaybox.PROVIDER_XML.GetAttribute("name") + "\r\n" + label1.Text;
            }

            if (!IsServiceAvailable)
            {
                ShowWarning(188, 500);
                AddLabel("Отсутствует связь.\r\nНевозможно провести платеж на этого провайдера.", new Point(350, 530), "Times New Roman", "20", "169;22;6");
            }
            else
            if (!IsAccountValid)
            {
                ShowWarning(188, 500);
                AddLabel(acctext + "\r\nне прошел проверку или сервис провайдера не работает.", new Point(350, 530), "Times New Roman", "20", "169;22;6");
            }
            else
            {
                // enable
                img[indexDalee].Visible = true;
                this.Invalidate();
            }
        }