public void SendFiles() { if (Ipaybox.XML_SendFile.DocumentElement.ChildNodes.Count > 0) { try { foreach (XmlElement el in Ipaybox.XML_SendFile.DocumentElement.ChildNodes) { if (el.Name == "filerequest") { string id = el.GetAttribute("id"); string name = el.GetAttribute("filename"); string path = el.GetAttribute("path"); string type = el.GetAttribute("type"); // тип отправки SERVER/EMAIL string email = el.GetAttribute("email"); // тип отправки SERVER/EMAIL switch (path) { case "relative": name = Ipaybox.StartupPath.TrimEnd('\\') + '\\' + name; break; } string zipname = id + ".zip"; if (!File.Exists(name)) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Запрошенный файл `" + name + "` не найден!"); break; } // Удалось создать архив if (PackFile(name, zipname)) { System.Threading.Thread.Sleep(30); FileInfo fi = new FileInfo(zipname); if (fi.Exists) { switch (type.ToLower()) { case "email": if (SMTP("Терминал " + Ipaybox.Terminal.terminal_id, "Файл " + name + " с терминала №" + Ipaybox.Terminal.terminal_id + " " + Ipaybox.Terminal.trm_adress, fi.FullName, email)) { Ipaybox.XML_SendFile.DocumentElement.RemoveChild(el); Ipaybox.XML_SendFile.Save("file.xml"); } break; } // Отпарвляем по смтп файл fi.Delete(); } } } } } catch { } } }
private void options_Load(object sender, EventArgs e) { if (!Ipaybox.ServiceMenuActive) { Ipaybox.ServiceMenuActive = true; if (Ipaybox.WindowsPrinter) { doc.PrintPage += new PrintPageEventHandler(printDoc_PrintPage); doc.EndPrint += new PrintEventHandler(EndPrint); } this.Text = "Настройки терминала - Версия ПО: " + Ipaybox.CoreVersion; Ipaybox.AddToLog(Ipaybox.Logs.Main, "Пин-код верный - вход в меню настройки терминала."); this.TopLevel = true; if (Ipaybox.Debug) { this.TopMost = false; } LoadF(); } else { this.Dispose(); } }
private void Pic_Click(object sender, System.EventArgs e) { //System.GC.Collect(); Sound.Play(Ipaybox.StartupPath.TrimEnd('\\') + "\\sounds\\" + "click1.wav"); zPictureBox pb = (zPictureBox)sender; //MessageBox.Show("CLICK PRV=" + pb.Tag); string tag = pb.Tag.ToString().ToLower(); // Нажата не кнопка на клаве switch (tag) { case "ok": Ipaybox.AddToLog(Ipaybox.Logs.Main, "Номер подтвержден"); Ipaybox.curPay.IsAccountConfirmed = true; Ipaybox.StartForm.Main_Process(); this.Dispose(); break; case "vmenu": Ipaybox.AddToLog(Ipaybox.Logs.Main, "Возврат в главное меню."); ExitForm(); break; case "goprev": Ipaybox.AddToLog(Ipaybox.Logs.Main, "Возврат в предыдущее меню."); Ipaybox.cFormIndex = Ipaybox.cFormIndex - 1; Ipaybox.StartForm.Main_Process(); this.Dispose(); //ExitForm(); break; } }
public static void printDoc_PrintPage(Object sender, PrintPageEventArgs e) { try { if (Ipaybox.FRS.RemoteFR && !Ipaybox.IncassCheck) { PrintString = remoteFR.RemoteFiscalRegister.tryFormFicsalCheck(Ipaybox.Terminal.jur_name.Trim(), Ipaybox.FRS.headertext, PrintString, "Сотовая св.", Ipaybox.Terminal.terminal_id.Trim(), Ipaybox.Terminal.terminal_pass, Ipaybox.curPay.txn_id, Ipaybox.curPay.from_amount.ToString(), "1", Ipaybox.FRS.RemoteFiscalRegisterURL, Ipaybox.FRS.checkWidth, Ipaybox.FRS.remoteFRtimeout); } } catch (Exception ex) { Ipaybox.AddToLog(Logs.Main, ex.Message); } if (Ipaybox.EpsonT400) { Font printFont = new Font("Courier New", 8); RectangleF rf = new RectangleF(0, 0, 220, 0); PrintString = PrintString.Replace("\r\n\r\n", "\r\n"); PrintString = PrintString.Trim(); e.Graphics.DrawString(PrintString, printFont, Brushes.Black, rf); } else { Font printFont = new Font("Courier New", 10); e.Graphics.DrawString(PrintString, printFont, Brushes.Black, 0, 0); } }
private void ExitForm() { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Выход формы `Спасибо`."); Ipaybox.FlushToMain(); Ipaybox.StartForm.Main_Process(); this.Dispose(); }
public void Connect(string entry) { try { if (!IsConnected(entry)) { if (Ipaybox.Debug) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Попытка соединения через " + entry); } dialer.PhoneBookPath = phonebook.Path; dialer.EntryName = entry; dialer.DialAsync(); } } catch (Exception ex) { if (Ipaybox.Debug) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Соединение НЕ установлено."); } HelperClass.CrashLog.AddCrash(ex); Connected = false; } }
//Определение параметров порта и попытка открытия порта модема private static bool OpenPort(string portName, int writeTimeOut, int readTimeOut, int baudRate, Parity parity, int dataBits, StopBits stopBits, Handshake handshake, bool dtrEnable, bool rtsEnable, string newLine) { //Попытка инициализировать порт try { port.PortName = portName; port.WriteTimeout = 500; port.ReadTimeout = 500; port.BaudRate = 115200; port.Parity = System.IO.Ports.Parity.None; port.DataBits = 8; port.StopBits = System.IO.Ports.StopBits.One; port.Handshake = System.IO.Ports.Handshake.RequestToSend; port.DtrEnable = true; port.RtsEnable = true; port.NewLine = System.Environment.NewLine; } catch (Exception ex) { Ipaybox.AddToLog(Ipaybox.Logs.Main, ex.Message); return(false); } //Попытка открытия порта try { port.Open(); } catch { return(false); } //Попытка записи в порт try { port.WriteLine("AT"); System.Threading.Thread.Sleep(100); string portans = port.ReadExisting().Trim(); if (portans.IndexOf("OK") == -1) { port.Close(); return(false); } else { return(true); } } catch (Exception ex) { Ipaybox.AddToLog(Ipaybox.Logs.Main, ex.Message); port.Close(); return(false); } }
// ПИН-коды public void UpdatePIN() { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Загрузка списка ПИН-кодов с сервера..."); try { string data = "<request>"; data += "<protocol>1.00</protocol>"; data += "<type>1.00</type>"; data += "<terminal>" + Ipaybox.Terminal.terminal_id + "</terminal>"; data += "<pass>" + Ipaybox.Terminal.terminal_pass + "</pass>"; data += "<pincode/>"; data += "</request>"; string resp = TryPostData(data); if (resp != "") { Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Получен ответ от сервера..."); try { XmlDocument doc = new XmlDocument(); doc.LoadXml(resp); if (resp.IndexOf("result") == -1) { Ipaybox.TPIN.LoadXml(doc.InnerXml); // Проверяем не пришел ли нам мусор... if (Ipaybox.TPIN.DocumentElement.ChildNodes.Count > 0) { if (Ipaybox.TPIN.DocumentElement.ChildNodes[0].Name == "pins") { if (Ipaybox.TPIN.DocumentElement.ChildNodes[0].ChildNodes.Count > 0) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Загружены ПИН-коды..."); Ipaybox.TPIN.Save(Ipaybox.StartupPath + "\\config\\tpin.xml"); } } } } } catch { Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Произошла ошибка при обработке ответа. Неправильный XML."); } } else { Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Ответ от сервера не получен."); } } catch (Exception ex) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Ошибка. " + ex.Message); } }
public bool SendAllPays() { if (Ipaybox.pays.DocumentElement.ChildNodes.Count > 0) { string data = "<request>"; data += "<protocol>1.00</protocol>"; data += "<type>1.00</type>"; data += "<terminal>" + Ipaybox.Terminal.terminal_id + "</terminal>"; data += "<pass>" + Ipaybox.Terminal.terminal_pass + "</pass>"; if (Ipaybox.pays.DocumentElement.ChildNodes.Count > 5) { data += "<pays count=\"1\">" + XmlSendPayCount(1) + "</pays>\r\n"; } else { data += "<pays count=\"" + Ipaybox.pays.DocumentElement.ChildNodes.Count + "\">" + Ipaybox.pays.DocumentElement.InnerXml + "</pays>\r\n"; foreach (XmlElement row in Ipaybox.pays.DocumentElement) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Готовим платеж к отправке №" + row.GetAttribute("txn_id")); } } //data += "<pays count=\"" + Ipaybox.pays.DocumentElement.ChildNodes.Count + "\">" + Ipaybox.pays.DocumentElement.InnerXml + "</pays>\r\n"; //data += GetFileToSend(); data += "</request>"; // отправляем файл если надо SendFiles(); string response = TryPostData(data); if (response != "") { XML_Response = response; XmlDocument resp = new XmlDocument(); try { resp.LoadXml(response); } catch { return(false); } return(ParseResponse(resp.DocumentElement)); } else { return(false); } } else { return(true); } }
private void timer1_Tick(object sender, EventArgs e) { Ipaybox.InvalidPinEntered = true; Ipaybox.Working = false; Ipaybox.ServiceMenu = false; Ipaybox.StartForm.Main_Process(); Ipaybox.LoginFormActive = false; this.Dispose(); Ipaybox.AddToLog(Ipaybox.Logs.Main, "Выход в главное меню по тайм-ауту."); }
private FileCheckError ValidateLocalFile(string file, string length, string crc) { FileInfo fi = null; try { if (file.IndexOf(Ipaybox.StartupPath) == -1) { fi = new FileInfo(Ipaybox.StartupPath + "\\" + file.TrimStart(new char[] { '\\' })); } else { fi = new FileInfo(file); } } catch (Exception ex) { Ipaybox.AddToLog(Ipaybox.Logs.Update, "\t\t Проверка " + file + " " + ex.ToString()); return(FileCheckError.UPDATE); } if (!fi.Exists) { return(FileCheckError.UPDATE); } crc32 = new CRC32(); String crclocal = String.Empty; using (FileStream fs = fi.OpenRead()) //here you pass the file name { foreach (byte b in crc32.ComputeHash(fs)) { crclocal += b.ToString("x2").ToLower(); } } if (length == fi.Length.ToString() && crc == crclocal) { Ipaybox.AddToLog(Ipaybox.Logs.Update, "\t\t Проверка " + file + " (" + length + ":" + crc + ")(" + fi.Length.ToString() + ":" + crclocal + ")= OK"); return(FileCheckError.OK); } else { Match m = Regex.Match(file, @"([.]exe$)||([.]dll$)"); if (m.Success) { file += ".update"; return(ValidateLocalFile(file, length, crc)); } Ipaybox.AddToLog(Ipaybox.Logs.Update, "\t\t Проверка " + file + " (" + length + ":" + crc + ")(" + fi.Length.ToString() + ":" + crclocal + ")=UPDATE"); return(FileCheckError.UPDATE); } }
// Комиссия public void UpdateComiss(bool critical) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Загрузка профилей комиссий..."); XmlDocument comission = new XmlDocument(); try { string xml = TryDownloadComiss(ref comission); if (xml != null) { if (xml.Length > 0) { Ipaybox.Incass.bytesRead += xml.Length; Ipaybox.FlushStatistic(); if (xml.IndexOf("result") == -1) { // нормальный Ipaybox.comiss.LoadXml(xml); Ipaybox.comiss.Save(Ipaybox.StartupPath + "\\config\\comiss.xml"); Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Профили успешно загружены."); Ipaybox.NeedUpdates.Comission = false; } else { // ошибка } } else { Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Не удалось загрузить профили."); if (critical) {// Останавливаем обновление } else {// не заменяем } } } else { //Останавливаем обновление Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Не удалось загрузить профили."); } } catch { //Останавливаем обновление Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Не удалось загрузить профили."); } }
private void dialer_StateChanged(object obj, StateChangedEventArgs args) { if (Ipaybox.Debug) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Модем State: " + args.State.ToString() + " Message:" + args.ErrorMessage); } if (args.State == RasConnectionState.Connected) { Connected = true; } else { Connected = false; } }
void info_KeyDown(object sender, KeyEventArgs e) { if (e.Modifiers == Keys.Alt && e.KeyCode == Keys.F4) { Ipaybox.StartForm.Dispose(); } if (e.KeyCode == Keys.F9) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Вход в сервисное меню по нажатию клавиши."); Form n = new login(); n.Show(); Ipaybox.ServiceMenu = true; ExitForm(); } }
private void dialer_DialCompleted(object obj, DialCompletedEventArgs args) { Connected = args.Connected; if (Ipaybox.Debug) { if (Connected) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Соединение установлено."); } else { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Соединение НЕ установлено."); } } }
private static void ClosePort() { try { if (port.IsOpen) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Закрытие порта " + port.PortName); port.Close(); } } catch (Exception ex) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "БАХ2!"); throw ex; } }
// Провайдеры public void UpdateProviderList() { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Загрузка списка провайдеров с сервера..."); string data = "<request>"; data += "<protocol>1.00</protocol>"; data += "<type>1.00</type>"; data += "<terminal>" + Ipaybox.Terminal.terminal_id + "</terminal>"; data += "<pass>" + Ipaybox.Terminal.terminal_pass + "</pass>"; data += "<providerlist/>"; data += "</request>"; string resp = TryPostData(data); if (resp != "") { Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Получен ответ от сервера..."); try { XmlDocument doc = new XmlDocument(); doc.LoadXml(resp); if (resp.IndexOf("result") == -1) { Ipaybox.providers.LoadXml(doc.InnerXml); // Проверяем не пришел ли нам мусор... if (Ipaybox.providers.DocumentElement.ChildNodes.Count > 0) { if (Ipaybox.providers.DocumentElement.ChildNodes[0].Name == "providers") { Ipaybox.providers.Save(Ipaybox.StartupPath + "\\config\\providers.xml"); Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Список провайдеров загружен..."); Ipaybox.NeedUpdates.ProviderList = false; } } } } catch { Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Произошла ошибка при обработке ответа. Неправильный XML."); } } else { Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Ответ от сервера не получен."); } }
// Терминал - Информация private string TryDownloadTerminalInfo() { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Загрузка информации о терминале."); XmlDocument d = new XmlDocument(); bool t = false; int count = 0; string xml = ""; while (!t && count < Ipaybox.ServiceUrl.Length * 2) { try { //xml = SendRequestGET(Ipaybox.ServiceUrl[Ipaybox.ServiceUrlIndex] + "xml_comiss.exe?trm_id="+Ipaybox.Terminal.terminal_id+"&trm_p="+Ipaybox.Terminal.terminal_pass); xml = Client.DownloadString(Ipaybox.ServiceUrl[Ipaybox.ServiceUrlIndex] + "xml_terminal.exe?trm_id=" + Ipaybox.Terminal.terminal_id + "&trm_p=" + Ipaybox.Terminal.terminal_pass); try { //string utf8 = Encoding.UTF8.GetString(Encoding.Convert(Encoding.ASCII, Encoding.UTF8, Encoding.ASCII.GetBytes(xml))); d.LoadXml(xml); Ipaybox.AddToLog(Ipaybox.Logs.Main, "...Успешно загружена."); Ipaybox.Incass.bytesSend += 10; Ipaybox.Incass.bytesRead += xml.Length; Ipaybox.FlushStatistic(); break; } catch { count++; } } catch { Ipaybox.ServiceUrlIndex++; if (Ipaybox.ServiceUrlIndex == Ipaybox.ServiceUrl.Length) { Ipaybox.ServiceUrlIndex = 0; } count++; } } return(xml); }
private void login_Load(object sender, EventArgs e) { if (!Ipaybox.LoginFormActive) { Ipaybox.LoginFormActive = true; _cursor.Show(); if (!Ipaybox.Debug) { this.TopMost = true; } Ipaybox.AddToLog(Ipaybox.Logs.Main, "Вход в Сервисное меню - Ввод пин-кода."); } else { this.Dispose(); } }
/// <summary> /// Полим купюрник /// </summary> private void Pooling() { if (CanPolling) { try { Ipaybox.Bill.AllowMoneyEnterOnPooling = false; Ipaybox.Bill.Pooling(); // Обработка ошибок if (Ipaybox.Bill.Error == true) { if (Ipaybox.Bill.ErrorMsg.IndexOf("DROP_CASSETTE_REMOVED") >= 0 && Ipaybox.ServiceMenu == false) { //Если не был введен неправильный пин - показать форму входа в сервисное меню if (!Ipaybox.InvalidPinEntered) { if (!Ipaybox.LoginFormActive) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Снят стекер. Показываем сервисное меню."); Form login = new login(); login.Show(); this.Dispose(); } } } else { //Стекер не снят - сброс ошибки ввода неверного ПИН-кода Ipaybox.InvalidPinEntered = false; } } else { //Ошибок купюроприемника нет - сброс ошибки ввода неверного ПИН-кода Ipaybox.InvalidPinEntered = false; } } catch { } } }
private void printDoc_PrintPage(Object sender, PrintPageEventArgs e) { FileInfo fi = new FileInfo(Ipaybox.StartupPath + "\\config\\vkp80.prn"); StreamReader sr = fi.OpenText(); string check = sr.ReadToEnd(); sr.Close(); check = check.Replace("[agent_jur_name]", Ipaybox.Terminal.jur_name.Trim()); check = check.Replace("[agent_adress]", Ipaybox.Terminal.jur_adress.Trim()); check = check.Replace("[agent_inn]", "ИНН " + Ipaybox.Terminal.jur_inn.Trim()); check = check.Replace("[agent_support_phone]", Ipaybox.Terminal.support_phone.Trim()); check = check.Replace("[bank]", Ipaybox.Terminal.bank.Trim()); check = check.Replace("[terms_number]", Ipaybox.Terminal.terms_number.Trim()); check = check.Replace("[count_bill]", Ipaybox.Incass.countchecks.ToString().Trim()); check = check.Replace("[terminal_id]", Ipaybox.Terminal.terminal_id.Trim()); check = check.Replace("[trm_adress]", Ipaybox.Terminal.trm_adress.Trim()); check = check.Replace("[date]", DateTime.Now.ToString().Trim()); check = check.Replace("[amount]", Ipaybox.curPay.from_amount.ToString() + " руб."); check = check.Replace("[to_amount]", Ipaybox.curPay.to_amount.ToString() + " руб."); if (Ipaybox.FRS.RemoteFR) { try { check = remoteFR.RemoteFiscalRegister.tryFormFicsalCheck(Ipaybox.Terminal.jur_name.Trim(), Ipaybox.FRS.headertext, check, "Тест", Ipaybox.Terminal.terminal_id.Trim(), Ipaybox.Terminal.terminal_pass, "0", "0", "1", Ipaybox.FRS.RemoteFiscalRegisterURL, Ipaybox.FRS.checkWidth, Ipaybox.FRS.remoteFRtimeout); } catch (Exception ex) { Ipaybox.AddToLog(Ipaybox.Logs.Main, ex.Message); } } ; if (Ipaybox.EpsonT400) { Font printFont = new Font("Courier New", 8); RectangleF rf = new RectangleF(0, 0, 220, 0); e.Graphics.DrawString("ШАБЛОН " + fi.Name + "\r\n" + check, printFont, Brushes.Black, rf); } else { Font printFont = new Font("Courier New", 10); e.Graphics.DrawString("ШАБЛОН " + fi.Name + "\r\n" + check, printFont, Brushes.Black, 0, 0); } }
public string XmlSendPayCount(int c_pays) { string pays = ""; for (int i = 0; i < c_pays; i++) { XmlElement el = (XmlElement)Ipaybox.pays.DocumentElement.ChildNodes[i]; pays += "<pay "; for (int j = 0; j < el.Attributes.Count; j++) { pays += el.Attributes[j].Name + "=\"" + el.Attributes[j].Value + "\" "; } Ipaybox.AddToLog(Ipaybox.Logs.Main, "Готовим платеж к отправке №" + el.GetAttribute("txn_id")); pays += ">"; pays += el.InnerXml; pays += "</pay> "; } return(pays); }
private void thanks_Load(object sender, EventArgs e) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Показываем форму `Спасибо`."); this.Size = Ipaybox.Resolution; if (Ipaybox.Inches == 17) { this.Location = new Point(0, 0); } try { _cursor.Hide(); if (!Ipaybox.Debug) { this.TopMost = false; } } catch { } LoadThisForm(); }
private void button2_Click(object sender, EventArgs e) { timer2.Stop(); timer2.Start(); this.TopMost = false; DialogResult dr = MessageBox.Show("Вы действительно хотите забрать деньги?", "Подтверждение инкассации", MessageBoxButtons.OKCancel); if (dr == DialogResult.OK) { //SendIncass si = new SendIncass(); Ipaybox.AddToLog(Ipaybox.Logs.Main, "Выбран пункт проинкассировать платежи."); try { Ipaybox.IncassCheck = true; PrintCheck(); var inc = new zeus.API.IncassHistoryEntity(Ipaybox.Incassation) { DateStoped = DateTime.Now, TerminalId = Ipaybox.Terminal.terminal_id, userID = Ipaybox.userID }; //Ipaybox.IncassHistory.Load(); Ipaybox.IncassHistory.Clear60(); Ipaybox.IncassHistory.Add(inc); Ipaybox.IncassHistory.Save(); Ipaybox.Incassation.UserID = Ipaybox.userID; Ipaybox.Import.Add("<i>" + Ipaybox.Incassation.IncassNow() + "</i>"); Ipaybox.AddToLog(Ipaybox.Logs.Main, "Инкассация добавлена в import."); ShowStatistic(); } catch (Exception ex) { MessageBox.Show("Инкассация НЕ ПРОШЛА! \r\n" + ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); Ipaybox.AddToLog(Ipaybox.Logs.Main, "Инкассация не прошла."); } } this.TopMost = true; }
private void Process_Form(zeus.HelperClass.zForm frm) { // Установка таймаута бездействия в мс if (frm.timeout != 0) { flush_timer.Interval = frm.timeout * 1000; } //Установка "бэкграунда" try { this.BackgroundImage = new Bitmap(Ipaybox.StartupPath + @"\" + frm.bgimg); this.BackgroundImageLayout = ImageLayout.Stretch; } catch { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Не удалось загрузить фоновое изображение"); ExitForm(); } //Добавляем элементы на форму //Надписи, кнопки, изображения, флэшки и т.п. 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.Pic_Click)); img_count++; } for (int i = 0; i < frm.labels.Count; i++) { Ipaybox.AddLabel(frm.labels[i], ref labels[labels_count], this); labels_count++; } }
/// <summary> /// Полим купюрник /// </summary> private void Pooling() { if (CanPolling) { try { Ipaybox.Bill.AllowMoneyEnterOnPooling = false; Ipaybox.Bill.Pooling(); // Обработка ошибок if (Ipaybox.Bill.Error == true) { if (Ipaybox.Bill.ErrorMsg.IndexOf("DROP_CASSETTE_REMOVED") >= 0 && Ipaybox.ServiceMenu == false) { if (!Ipaybox.InvalidPinEntered) { pooling.Stop(); Ipaybox.AddToLog(Ipaybox.Logs.Main, "Снят стекер. Показываем сервисное меню."); this.ShowLoginForm(""); } } else { //Стекер не снят - сброс ошибки ввода неверного ПИН-кода Ipaybox.InvalidPinEntered = false; } } else { //Ошибок нет - сброс ошибки ввода неверного ПИН-кода Ipaybox.InvalidPinEntered = false; } } catch { } } }
public modem() { try { dialer = new RasDialer(); phonebook = new RasPhoneBook(); dialer.DialCompleted += new EventHandler <DialCompletedEventArgs>(dialer_DialCompleted); dialer.StateChanged += new EventHandler <StateChangedEventArgs>(dialer_StateChanged); phonebook.Open(); Entry = new string[phonebook.Entries.Count]; for (int i = 0; i < phonebook.Entries.Count; i++) { Entry[i] = phonebook.Entries[i].Name; } } catch (Exception ex) { HelperClass.CrashLog.AddCrash(ex); Ipaybox.AddToLog(Ipaybox.Logs.Main, "Не удалось инициализировать класс работы с GPRS;"); } }
private void button14_Click(object sender, EventArgs e) { bool AccessGranted = false; string UserName = "******"; if (!Ipaybox.MasterPIN_IsActive) { for (int i = 0; i < Ipaybox.TPIN.GetElementsByTagName("person").Count; i++) { XmlElement el = Ipaybox.TPIN.GetElementsByTagName("person")[i] as XmlElement; string pin_el = el.GetAttribute("pin").ToString(); if (pin_el == Ipaybox.getMd5Hash(pin)) { AccessGranted = true; UserName = el.GetAttribute("name").ToString(); Ipaybox.userID = Convert.ToUInt32(el.GetAttribute("pid")); break; } } } else { XmlElement el = Ipaybox.terminal_info.GetElementsByTagName("pin")[0] as XmlElement; string pin_el = el.InnerText; if (pin_el == Ipaybox.getMd5Hash(pin)) { AccessGranted = true; Ipaybox.userID = 1; } } if (AccessGranted) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Попытка входа в сервисное меню. " + UserName); Form i = new options(); Ipaybox.LoginFormActive = false; i.Show(); this.Dispose(); } else { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Попытка входа в сервисное меню pin-code:" + pin); EnteringPINcount++; pin = ""; if (EnteringPINcount > 2) { Ipaybox.Working = false; Ipaybox.InvalidPinEntered = true; Ipaybox.ServiceMenu = false; Ipaybox.StartForm.Main_Process(); Ipaybox.LoginFormActive = false; this.Dispose(); Ipaybox.AddToLog(Ipaybox.Logs.Main, "ПИН введен неверно 3 раза"); } } textBox1.Text = pin; }
private void Process_Form(XmlElement frm) { XmlElement root = frm; try { this.BackgroundImage = new Bitmap(Ipaybox.StartupPath + @"\" + root.GetAttribute("backgroundimage")); } catch { } string bgcolor = string.Empty; try { root.GetAttribute("bgcolor"); } catch { } if (!string.IsNullOrEmpty(bgcolor)) { string[] rgb = bgcolor.Split(';'); if (rgb.Length == 3) { try { this.BackColor = Color.FromArgb(int.Parse(rgb[0]), int.Parse(rgb[1]), int.Parse(rgb[2])); } catch { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Неверное представление цвета в тэге bgcolor"); } } } for (int i = 0; i < root.ChildNodes.Count; i++) { XmlElement row = (XmlElement)root.ChildNodes[i]; if (row.Name == "img") { Ipaybox.AddImage(row, ref img[img_count], this); img_count++; } if (row.Name == "button") { AddButton(row); } if (row.Name == "label") { Ipaybox.AddLabel(row, ref labels[label_count], this); label_count++; } if (row.Name == "flash") { AddFlash(row, this); } } }
public static void AddBanner(zeus.HelperClass.zBanner btn, System.Windows.Forms.Form f, EventHandler tar) { try { string location = btn.location; string limg = btn.src; string size = btn.size; int X = int.Parse(location.Split(';')[0]); int Y = int.Parse(location.Split(';')[1]); int sizeX = int.Parse(size.Split(';')[0]); int sizeY = int.Parse(size.Split(';')[1]); XmlElement root = (XmlElement)Ipaybox.config.DocumentElement.SelectSingleNode("banners"); Image _gif = null; try { if (root == null) { _gif = Image.FromFile(limg); } else { for (int i = 0; i < root.ChildNodes.Count; i++) { XmlElement row = (XmlElement)root.ChildNodes[i]; if (row.Name == "banner") { string form = row.GetAttribute("form").ToLower(); if (form == "acceptaccount" || form == "all") { string src = row.GetAttribute("src"); _gif = Image.FromFile(src); break; } } } if (_gif == null) { _gif = Image.FromFile(limg); } } } catch { _gif = Image.FromFile(limg); } PictureBox pb = new PictureBox(); pb.Size = new Size(sizeX, sizeY); pb.Location = new Point(X, Y); pb.BackColor = Color.Transparent; pb.Image = _gif; f.Controls.Add(pb); } catch (Exception ex) { Ipaybox.AddToLog(Ipaybox.Logs.Main, "Не удалось загрузить баннер: " + ex.Message); } }