Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 24.32 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Net;
  6. using System.Threading;
  7. using System.IO;
  8.  
  9. using Android.App;
  10. using Android.Content;
  11. using Android.OS;
  12. using Android.Runtime;
  13. using Android.Views;
  14. using Android.Widget;
  15. using Android.Graphics.Drawables;
  16. using Android.Graphics;
  17.  
  18. using Org.Json;
  19.  
  20. namespace SmartPubAndroid.Menu
  21. {
  22.     class AllData
  23.     {
  24.         public static List<ActivityListViewItem> homeItems = new List<ActivityListViewItem>();
  25.         public static List<Menu.StalaNabidkaKategorieItem> stalaNabidkaKategorieItems = new List<Menu.StalaNabidkaKategorieItem>();
  26.         public static List<Menu.StalaNabidkaItem> stalaNabidkaItems = new List<StalaNabidkaItem>();
  27.         public static List<Menu.PrilohaItem> prilohyItems = new List<PrilohaItem>();
  28.         public static List<Menu.NapojeKategorieItem> napojeKategorieItems = new List<NapojeKategorieItem>();
  29.         public static List<Menu.NapojItem> napojeItems = new List<NapojItem>();
  30.         public static List<Menu.AkceItem> akceItems = new List<AkceItem>();
  31.         public static List<Menu.StalaNabidkaMoznosti> moznostiItems = new List<StalaNabidkaMoznosti>();
  32.  
  33.         public static List<Menu.DenniMenuItem> denniMenuItems = new List<DenniMenuItem>();
  34.         public static Byte[] pubImg;
  35.         public static Byte[] mainMenuImg;
  36.         public static string server = "";
  37.         public static string tableId = "";
  38.  
  39.         public static int pocetStalaNabidka = 0;
  40.         public static int pocetPrilohy = 0;
  41.  
  42.         public static void SmazatData()
  43.         {
  44.             homeItems.Clear ();
  45.             stalaNabidkaKategorieItems.Clear ();
  46.             stalaNabidkaItems.Clear ();
  47.             prilohyItems.Clear ();
  48.             napojeKategorieItems.Clear ();
  49.             napojeItems.Clear ();
  50.             akceItems.Clear ();
  51.             moznostiItems.Clear ();
  52.             denniMenuItems.Clear ();
  53.             pubImg = null;
  54.             server = "";
  55.             tableId = "";
  56.         }
  57.  
  58.         public static void NactiData(ProgressDialog dialog)
  59.         {
  60.             NactiHomeData();
  61.         }
  62.  
  63.         public static Byte[] LoadImageFromUrl(string url)
  64.         {
  65.             //Android.Graphics.Bitmap res = null;
  66.             try
  67.             {
  68.                 Java.Net.URL addr = new Java.Net.URL(url);
  69.  
  70.             //  res = Android.Graphics.BitmapFactory.DecodeStream(addr.OpenStream(), null, options);
  71.                 byte[] bytearr = ReadFully (addr.OpenStream());
  72.                 return bytearr;
  73.             }
  74.             catch(Exception ex)
  75.             {
  76.                 Console.WriteLine(ex.Message);
  77.             }
  78.             return new byte[0];
  79.             //return res;
  80.         }
  81.  
  82.         public static Bitmap GetImageFromArray(byte[] array, int currWidth, int currHeight)
  83.         {
  84.             var options = new BitmapFactory.Options{ InJustDecodeBounds = true,};
  85.  
  86.             using (var dispose = BitmapFactory.DecodeByteArray(array, 0, array.Length, options)) {
  87.             }
  88.             options.InSampleSize = CalculateInSampleSize(options, currWidth, currHeight);
  89.             options.InJustDecodeBounds = false;
  90.             options.InPreferredConfig = Android.Graphics.Bitmap.Config.Rgb565;
  91.  
  92.             return BitmapFactory.DecodeByteArray (array, 0, array.Length, options);
  93.         }
  94.  
  95.         public static void SaveFileToDevice(string fileName, Byte[] input)
  96.         {
  97.             try{
  98.             var documentsDirectory = System.Environment.GetFolderPath
  99.                 (System.Environment.SpecialFolder.Personal);
  100.             //string destinationFolder = System.IO.Path.Combine (documentsDirectory, "Images");
  101.        
  102.             string jpgFilename = System.IO.Path.Combine (documentsDirectory, fileName + ".jpg"); // hardcoded filename, overwritten each time
  103.  
  104.             FileStream fs = File.Create (jpgFilename);
  105.  
  106.             fs.Write (input, 0, input.Length);
  107.  
  108.             }
  109.             catch(Exception ex)
  110.             {
  111.                 Console.WriteLine (ex.Message);
  112.             }
  113.         }
  114.  
  115.         public static Bitmap LoadBitmapFromFile(string fileName)
  116.         {
  117.             Bitmap res = null;
  118.             try
  119.             {
  120.                 var documentsDirectory = System.Environment.GetFolderPath
  121.                     (System.Environment.SpecialFolder.Personal);
  122.                 string jpgFilename = System.IO.Path.Combine (documentsDirectory, fileName + ".jpg"); // hardcoded filename, overwritten each time
  123.  
  124.                 if(File.Exists(jpgFilename))
  125.                 {
  126.                     BitmapFactory.Options options = new BitmapFactory.Options();
  127.                     options.InPreferredConfig = Bitmap.Config.Rgb565;
  128.  
  129.                     res = BitmapFactory.DecodeFile(jpgFilename, options);
  130.                     return res;
  131.                 }
  132.  
  133.             }
  134.             catch(Exception ex)
  135.             {
  136.                 Console.WriteLine (ex.Message);
  137.             }
  138.             return res;
  139.         }
  140.          
  141.         public static int CalculateInSampleSize(BitmapFactory.Options options, int reqWidth, int reqHeight)
  142.         {
  143.             // Raw height and width of image
  144.             var height = (float)options.OutHeight;
  145.             var width = (float)options.OutWidth;
  146.             var inSampleSize = 1D;
  147.  
  148.             if (height > reqHeight || width > reqWidth)
  149.             {
  150.                 inSampleSize = width > height
  151.                     ? height/reqHeight
  152.                     : width/reqWidth;
  153.             }
  154.  
  155.             return (int) inSampleSize;
  156.         }
  157.  
  158.    /*     public static Drawable LoadImageFromWebOperations(string sUrl)
  159.         {
  160.             Drawable result;
  161.             try
  162.             {
  163.                 var clien = new WebClient();
  164.                 Stream stream = clien.OpenRead(sUrl);
  165.                 result = Drawable.CreateFromStream(stream, "src");
  166.                 clien.Dispose();
  167.                 return result;
  168.             }
  169.             catch (Exception e)
  170.             {
  171.                 Console.WriteLine(e.Message);
  172.             }
  173.             return new ColorDrawable(Android.Graphics.Color.Transparent);
  174.         }*/
  175.  
  176.  
  177.         public static void NactiHomeData()
  178.         {
  179.  
  180.             if (denniMenuItems.Where( x => x.Polevka != 1).ToList().Count > 0)
  181.             {
  182.                 homeItems.Add(new ActivityListViewItem("Denní menu", "...denně od 12:00 do 14:00", Resource.Drawable.denniMenu150));
  183.             }
  184.  
  185.             List<ActivityListViewItem> items = new List<ActivityListViewItem>()
  186.             {
  187.                 new ActivityListViewItem { Hading = "Stálá nabídka", SubHeading = "...nejlepší ve měste", ImageId = Resource.Drawable.stalaNabidka150},
  188.                 new ActivityListViewItem { Hading = "Přílohy", SubHeading = "...k zakousnutí či hlavnímu chodu, pro naše hosty jen to nejlepší", ImageId = Resource.Drawable.prilohy},
  189.                 new ActivityListViewItem { Hading = "Nápoje", SubHeading = "...chlazené, horké, alkoholické...", ImageId = Resource.Drawable.napoje}
  190.             };
  191.  
  192.             if (akceItems.Count > 0)
  193.                 items.Add(new ActivityListViewItem("Naplánované události", "...akce pro naše hosty", Resource.Drawable.akce));
  194.  
  195.         //    homeItems.AddRange(items);
  196.  
  197.             //pubImg = LoadImageFromUrl("http://" + server + "/smartpub/Images/pub.jpg");
  198.             mainMenuImg = LoadImageFromUrl ("http://" + server + "/smartpub/Images/maimMenuBg.jpg");
  199.         }
  200.  
  201.         public static void GetPocetPolozek()
  202.         {
  203.             string[] postdata = new string[0];
  204.             JSONArray jsonData = GetData("http://" + server + "/smartpub/server/getPocetPolozek.php", postdata);
  205.  
  206.             for (int i = 0; i < jsonData.Length(); i++)
  207.             {
  208.                 JSONObject c = jsonData.GetJSONObject(i);
  209.                 pocetPrilohy = c.GetInt ("prilohy_pocet");
  210.                 pocetStalaNabidka = c.GetInt ("stalaNabidka_pocet");
  211.             }
  212.         }
  213.  
  214.  
  215.         public static void StalaNabidkaMoznostiGetData()
  216.         {
  217.             moznostiItems.Clear();
  218.             string[] postdata = new string[0];
  219.             JSONArray jsonData = GetData("http://" + server + "/smartpub/server/getMoznostiItems.php", postdata);
  220.  
  221.             for (int i = 0; i < jsonData.Length(); i++)
  222.             {
  223.                 JSONObject c = jsonData.GetJSONObject(i);
  224.                 Menu.StalaNabidkaMoznosti item = new Menu.StalaNabidkaMoznosti();
  225.  
  226.                 item.IdJidlo = c.GetLong("ID_Jidlo");
  227.                 item.Text = c.GetString("Text");
  228.  
  229.                 moznostiItems.Add(item);
  230.             }
  231.         }
  232.  
  233.         public static void DenniMenuGetData()
  234.         {
  235.             denniMenuItems.Clear();
  236.             string[] postdata = new string[0];
  237.             JSONArray jsonData = GetData("http://" + server + "/smartpub/server/getDenniMenuItems.php", postdata);
  238.             // stalaNabidkaKategorieItems = new Menu.StalaNabidkaKategorieItem[jsonData.Length()];
  239.  
  240.             for (int i = 0; i < jsonData.Length(); i++)
  241.             {
  242.                 JSONObject c = jsonData.GetJSONObject(i);
  243.                 Menu.DenniMenuItem item = new Menu.DenniMenuItem();
  244.  
  245.                 item.ID = c.GetLong("ID");
  246.                 item.NazevJidla = c.GetString("Nazev_jidla");
  247.                 item.StrucnyPopis = c.GetString("Strucny_popis");
  248.                 item.PopisDetailu = c.GetString("Popis_detailu");
  249.                 item.Polevka = c.GetInt("Polevka");
  250.                 item.Cena = c.GetInt("Cena");
  251.                 item.Kuchyn = c.GetInt("Kuchyn");
  252.                 item.PolevkaKMenu = c.GetInt("Polevka_k_menu");
  253.  
  254.                 item.Image = LoadImageFromUrl("http://" + server + "/smartpub/Images/denniMenu/" + item.ID + ".jpg");
  255.  
  256.                 denniMenuItems.Add(item);
  257.             }
  258.         }
  259.  
  260.         public static void AkceGetData()
  261.         {
  262.             akceItems.Clear();
  263.             string[] postdata = new string[0];
  264.             JSONArray jsonData = GetData("http://" + server + "/smartpub/server/getAkceItems.php", postdata);
  265.             // stalaNabidkaKategorieItems = new Menu.StalaNabidkaKategorieItem[jsonData.Length()];
  266.  
  267.             for (int i = 0; i < jsonData.Length(); i++)
  268.             {
  269.                 JSONObject c = jsonData.GetJSONObject(i);
  270.                 Menu.AkceItem item = new Menu.AkceItem();
  271.  
  272.                 item.ID = c.GetLong("ID");
  273.                 item.NazevAkce = c.GetString("Nazev_akce");
  274.                 item.DatumKonani = DateTime.Parse(c.GetString("Datum_konani")).ToString("dd.MM.yyyy HH:mm");
  275.                 item.Cena = c.GetInt("Cena");
  276.                 item.Odkaz = c.GetString("Odkaz");
  277.                 item.FbOdkaz = c.GetString("FbOdkaz");
  278.  
  279.                 item.Image = LoadImageFromUrl("http://" + server + "/smartpub/Images/akce/" + item.ID + ".jpg");
  280.  
  281.                 akceItems.Add(item);
  282.             }
  283.         }
  284.  
  285.         public static void NapojeGetData()
  286.         {
  287.             napojeItems.Clear();
  288.             string[] postdata = new string[0];
  289.             JSONArray jsonData = GetData("http://" + server + "/smartpub/server/getNapojeItems.php", postdata);
  290.             // stalaNabidkaKategorieItems = new Menu.StalaNabidkaKategorieItem[jsonData.Length()];
  291.  
  292.             for (int i = 0; i < jsonData.Length(); i++)
  293.             {
  294.                 JSONObject c = jsonData.GetJSONObject(i);
  295.                 Menu.NapojItem item = new Menu.NapojItem();
  296.  
  297.                 item.ID = c.GetLong("ID");
  298.                 item.IDKategorie = c.GetLong("Kategorie_ID");
  299.                 item.NazeNapoje = c.GetString("Nazev_napoje");
  300.                 item.StrucnyPopis = c.GetString("Strucny_popis");
  301.                 item.PopisDetailu = c.GetString("Popisek_detail");
  302.                 item.Objem = c.GetString("Objem");
  303.                 item.Cena = c.GetInt("Cena");
  304.  
  305.                 item.Image = LoadImageFromUrl("http://" + server + "/smartpub/Images/napoje/" + item.ID + ".jpg");
  306.  
  307.                 napojeItems.Add(item);
  308.             }
  309.         }
  310.  
  311.  
  312.         public static void PrilohyGetData()
  313.         {
  314.             prilohyItems.Clear();
  315.             string[] postdata = new string[0];
  316.             JSONArray jsonData = GetData("http://" + server + "/smartpub/server/getPrilohyItems.php", postdata);
  317.             // stalaNabidkaKategorieItems = new Menu.StalaNabidkaKategorieItem[jsonData.Length()];
  318.  
  319.             for (int i = 0; i < jsonData.Length(); i++)
  320.             {
  321.                 JSONObject c = jsonData.GetJSONObject(i);
  322.                 Menu.PrilohaItem item = new Menu.PrilohaItem();
  323.  
  324.                 item.ID = c.GetLong("ID");
  325.                 item.NazevPrilohy = c.GetString("Nazev_prilohy");
  326.                 item.StrucnyPopis = c.GetString("Strucny_popis");
  327.                 item.Cena = c.GetInt("Cena");
  328.                 item.Kuchyn = c.GetInt("Kuchyn");
  329.  
  330.                 item.Image = LoadImageFromUrl("http://" + server + "/smartpub/Images/prilohy/" + item.ID + ".jpg");
  331.  
  332.                 prilohyItems.Add(item);
  333.             }
  334.         }
  335.  
  336.         public static void NapojeKategorieGetData()
  337.         {
  338.             napojeKategorieItems.Clear();
  339.             string[] postdata = new string[0];
  340.             JSONArray jsonData = GetData("http://" + server + "/smartpub/server/getNapojeKategorieItems.php", postdata);
  341.             // stalaNabidkaKategorieItems = new Menu.StalaNabidkaKategorieItem[jsonData.Length()];
  342.  
  343.             for (int i = 0; i < jsonData.Length(); i++)
  344.             {
  345.                 JSONObject c = jsonData.GetJSONObject(i);
  346.                 Menu.NapojeKategorieItem item = new Menu.NapojeKategorieItem();
  347.  
  348.                 item.ID = c.GetInt("ID");
  349.                 item.NazevKategorie = c.GetString("Nazev_kategorie");
  350.  
  351.                 item.Image = LoadImageFromUrl("http://" + server + "/smartpub/Images/napojeKategorie/" + item.ID + ".jpg");
  352.  
  353.                 napojeKategorieItems.Add(item);
  354.             }
  355.         }
  356.  
  357.         public static void StalaNabidkaGetData()
  358.         {
  359.             stalaNabidkaItems.Clear();
  360.             string[] postdata = new string[0];
  361.             JSONArray jsonData = GetData("http://" + server + "/smartpub/server/getStalaNabidkaItems.php", postdata);
  362.             // stalaNabidkaKategorieItems = new Menu.StalaNabidkaKategorieItem[jsonData.Length()];
  363.  
  364.             for (int i = 0; i < jsonData.Length(); i++)
  365.             {
  366.                 JSONObject c = jsonData.GetJSONObject(i);
  367.                 Menu.StalaNabidkaItem item = new Menu.StalaNabidkaItem();
  368.  
  369.                 item.ID = c.GetLong("ID");
  370.                 item.IDKategorie = c.GetLong("Kategorie_ID");
  371.                 item.NazevJidla = c.GetString("Nazev_jidla");
  372.                 item.Priloha = c.GetInt("Priloha");
  373.                 item.StrucnyPopis = c.GetString("Strucny_popis");
  374.                 item.PopisDetailu = c.GetString("Popis_detailu");
  375.                 item.Cena = c.GetInt("Cena");
  376.                 item.Kuchyn = c.GetInt("Kuchyn");
  377.                
  378.                 item.Image = LoadImageFromUrl("http://" + server + "/smartpub/Images/stalaNabidka/" + item.ID + ".jpg");
  379.  
  380.                 //Java.Net.URL addr = new Java.Net.URL("http://" + server + "/smartpub/Images/stalaNabidka/" + item.ID + ".jpg");
  381.                 //item.ImageMemoryStream = addr.OpenStream ();
  382.  
  383.                 //byte[] bytearr = ReadFully (addr.OpenStream());
  384.                 //SaveFileToDevice (item.ID.ToString(), bytearr);
  385.  
  386.  
  387.  
  388.  
  389.  
  390.                 //ffffffffffffffffffffffffffffffffffffff
  391.                 //if (item.Image != null) {
  392.                 //  int size = item.Image.ByteCount;
  393.             //  }
  394.                 stalaNabidkaItems.Add(item);
  395.             }
  396.         }
  397.  
  398.         public static byte[] ReadFully(Stream input)
  399.         {
  400.             byte[] buffer = new byte[16*1024];
  401.             using (MemoryStream ms = new MemoryStream())
  402.             {
  403.                 int read;
  404.                 while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
  405.                 {
  406.                     ms.Write(buffer, 0, read);
  407.                 }
  408.                 return ms.ToArray();
  409.             }
  410.         }
  411.  
  412.         public static void StalaNabidkaKategorieGetData()
  413.         {
  414.             stalaNabidkaKategorieItems.Clear();
  415.             string[] postdata = new string[0];
  416.             JSONArray jsonData = GetData("http://" + server + "/smartpub/server/getStalaNabidka.php", postdata);
  417.             // stalaNabidkaKategorieItems = new Menu.StalaNabidkaKategorieItem[jsonData.Length()];
  418.            
  419.             for (int i = 0; i < jsonData.Length(); i++)
  420.             {
  421.                 JSONObject c = jsonData.GetJSONObject(i);
  422.                 Menu.StalaNabidkaKategorieItem item = new Menu.StalaNabidkaKategorieItem();
  423.  
  424.                 item.ID = c.GetString("ID");
  425.                 item.NazevKategorie = c.GetString("Nazev_kategorie");
  426.  
  427.                 item.Image = LoadImageFromUrl("http://" + server + "/smartpub/Images/stalaNabidkaKategorie/" + item.ID + ".jpg");
  428.                 //item.Image = c.GetString("Obrazek")
  429.             //  if (item.Image != null) {
  430.             //      int size = item.Image.ByteCount;
  431.                 //}
  432.                 stalaNabidkaKategorieItems.Add(item);
  433.             }
  434.         }
  435.  
  436.         public static long OdeslatPozadavek(string akce)
  437.         {
  438.             string[] postdata = new string[4];
  439.             postdata[0] = "akce";
  440.             postdata[1] =  akce;
  441.             postdata[2] = "tableId";
  442.             postdata[3] = tableId;
  443.  
  444.             return PostData("http://" + server + "/smartpub/server/insertIntoPozadavky.php", postdata);
  445.         }
  446.  
  447.         public static long PrilohyProvestobjednavku(PrilohaItem item)
  448.         {
  449.             string[] postdata = new string[16];
  450.             postdata[0] = "userName";
  451.             postdata[1] = "host";
  452.             postdata[2] = "nazevJidla";
  453.             postdata[3] = item.NazevPrilohy;
  454.             postdata[4] = "tableId";
  455.             postdata[5] = tableId;
  456.             postdata[6] = "cena";
  457.             postdata[7] = item.Cena.ToString();
  458.             postdata[8] = "kuchyn";
  459.             postdata[9] = item.Kuchyn.ToString();
  460.             postdata[10] = "itemId";
  461.             postdata[11] = item.ID.ToString();
  462.             postdata[12] = "tableName";
  463.             postdata[13] = "prilohy";
  464.             postdata[14] = "jidloId";
  465.             postdata[15] = "-1";
  466.  
  467.             return PostData("http://" + server + "/smartpub/server/insertIntoNezaplaceneObjednavky.php", postdata);
  468.  
  469.         }
  470.  
  471.         public static void DenniMenuProvestObjednavku(DenniMenuItem item)
  472.         {
  473.             string[] postdata = new string[16];
  474.             postdata[0] = "userName";
  475.             postdata[1] = "host";
  476.             postdata[2] = "nazevJidla";
  477.             postdata[3] = item.NazevJidla;
  478.             postdata[4] = "tableId";
  479.             postdata[5] = tableId;
  480.             postdata[6] = "cena";
  481.             postdata[7] = item.Cena.ToString();
  482.             postdata[8] = "kuchyn";
  483.             postdata[9] = item.Kuchyn.ToString();
  484.             postdata[10] = "itemId";
  485.             postdata[11] = item.ID.ToString();
  486.             postdata[12] = "tableName";
  487.             postdata[13] = "denniMenu";
  488.             postdata[14] = "jidloId";
  489.             postdata[15] = "-1";
  490.  
  491.             PostData("http://" + server + "/smartpub/server/insertIntoNezaplaceneObjednavky.php", postdata);
  492.  
  493.         }
  494.  
  495.         public static void NapojeProvestobjednavku(NapojItem item)
  496.         {
  497.             string[] postdata = new string[16];
  498.             postdata[0] = "userName";
  499.             postdata[1] = "host";
  500.             postdata[2] = "nazevJidla";
  501.             postdata[3] = item.NazeNapoje;
  502.             postdata[4] = "tableId";
  503.             postdata[5] = tableId;
  504.             postdata[6] = "cena";
  505.             postdata[7] = item.Cena.ToString();
  506.             postdata[8] = "kuchyn";
  507.             postdata[9] = "0";
  508.             postdata[10] = "itemId";
  509.             postdata[11] = item.ID.ToString();
  510.             postdata[12] = "tableName";
  511.             postdata[13] = "napoje";
  512.             postdata[14] = "jidloId";
  513.             postdata[15] = "-1";
  514.  
  515.             PostData("http://" + server + "/smartpub/server/insertIntoNezaplaceneObjednavky.php", postdata);
  516.  
  517.         }
  518.  
  519.         public static void StalaNabidkaProvestobjednavku(StalaNabidkaItem item, long jidloId)
  520.         {
  521.             string[] postdata = new string[16];
  522.             postdata[0] = "userName";
  523.             postdata[1] = "host";
  524.             postdata[2] = "nazevJidla";
  525.             postdata[3] = item.NazevJidla;
  526.             postdata[4] = "tableId";
  527.             postdata[5] = tableId;
  528.             postdata[6] = "cena";
  529.             postdata[7] = item.Cena.ToString();
  530.             postdata[8] = "kuchyn";
  531.             postdata[9] = item.Kuchyn.ToString();
  532.             postdata[10] = "itemId";
  533.             postdata[11] = item.ID.ToString();
  534.             postdata[12] = "tableName";
  535.             postdata[13] = "stalanabidka";
  536.             postdata[14] = "jidloId";
  537.             postdata[15] = jidloId.ToString();
  538.  
  539.             PostData("http://" + server + "/smartpub/server/insertIntoNezaplaceneObjednavky.php", postdata);
  540.            
  541.         }
  542.  
  543.         private static long PostData(string Url, params string[] postdata)
  544.         {
  545.             long newId = 0;
  546.             string result = string.Empty;
  547.             string data = string.Empty;
  548.  
  549.             System.Text.ASCIIEncoding ascii = new ASCIIEncoding();
  550.  
  551.             for (int i = 0; i < postdata.Length; i += 2)
  552.             {
  553.                 data += string.Format("&{0}={1}", postdata[i], postdata[i + 1]);
  554.             }
  555.  
  556.             if (data.Length > 0)
  557.                 data = data.Remove(0, 1);
  558.  
  559.             byte[] bytesarr = System.Text.Encoding.UTF8.GetBytes(data);
  560.             try
  561.             {
  562.                 WebRequest request = WebRequest.Create(Url);
  563.  
  564.                 request.Method = "POST";
  565.                 request.ContentType = "application/x-www-form-urlencoded";
  566.                 request.ContentLength = bytesarr.Length;
  567.  
  568.                 System.IO.Stream streamwriter = request.GetRequestStream();
  569.                 streamwriter.Write(bytesarr, 0, bytesarr.Length);
  570.                 streamwriter.Close();
  571.  
  572.                 WebResponse response = request.GetResponse();
  573.                 streamwriter = response.GetResponseStream();
  574.  
  575.                 System.IO.StreamReader streamread = new System.IO.StreamReader(streamwriter);
  576.                 result = streamread.ReadToEnd();
  577.                 streamread.Close();
  578.                 Int64.TryParse(result, out newId);
  579.             }
  580.             catch (Exception ex)
  581.             {
  582.                 int x = 0;
  583.             }
  584.  
  585.             return newId;
  586.         }
  587.  
  588.  
  589.  
  590.         private static JSONArray GetData(string Url, params string[] postdata)
  591.         {
  592.             string result = string.Empty;
  593.             string data = string.Empty;
  594.  
  595.             System.Text.ASCIIEncoding ascii = new ASCIIEncoding();
  596.  
  597.             if (postdata.Length % 2 != 0)
  598.             {
  599.                 // MessageBox.Show("Parameters must be even , \"user\" , \"value\" , ... etc", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error);
  600.                 //  return string.Empty;
  601.             }
  602.  
  603.             for (int i = 0; i < postdata.Length; i += 2)
  604.             {
  605.                 data += string.Format("&{0}={1}", postdata[i], postdata[i + 1]);
  606.             }
  607.  
  608.             if (data.Length > 0)
  609.                 data = data.Remove(0, 1);
  610.  
  611.             byte[] bytesarr = ascii.GetBytes(data);
  612.             try
  613.             {
  614.                 WebRequest request = WebRequest.Create(Url);
  615.  
  616.                 request.Method = "POST";
  617.                 request.ContentType = "application/x-www-form-urlencoded";
  618.                 request.ContentLength = bytesarr.Length;
  619.  
  620.                 System.IO.Stream streamwriter = request.GetRequestStream();
  621.                 streamwriter.Write(bytesarr, 0, bytesarr.Length);
  622.                 streamwriter.Close();
  623.  
  624.                 WebResponse response = request.GetResponse();
  625.                 streamwriter = response.GetResponseStream();
  626.  
  627.                 System.IO.StreamReader streamread = new System.IO.StreamReader(streamwriter);
  628.                 result = streamread.ReadToEnd();
  629.                 streamread.Close();
  630.             }
  631.             catch (Exception ex)
  632.             {
  633.                 int x = 0;
  634.             }
  635.  
  636.             JSONObject novyObjekt = new JSONObject(result);
  637.             JSONArray jsonData = novyObjekt.GetJSONArray("data");
  638.  
  639.             return jsonData;
  640.         }
  641.  
  642.         public static bool Ping(string server)
  643.         {
  644.             bool exists = false;
  645.  
  646.             try
  647.             {
  648.                 Java.Net.SocketAddress sockaddr = new Java.Net.InetSocketAddress(server, 80);
  649.                 // Create an unbound socket
  650.                 Java.Net.Socket sock = new Java.Net.Socket();
  651.  
  652.                 // This method will block no more than timeoutMs.
  653.                 // If the timeout occurs, SocketTimeoutException is thrown.
  654.                 int timeoutMs = 3000;   // 3 seconds
  655.                 sock.Connect(sockaddr, timeoutMs);
  656.                 exists = true;
  657.             }
  658.             catch (Exception e)
  659.             {
  660.                 try
  661.                 {
  662.                 Java.Net.SocketAddress sockaddr = new Java.Net.InetSocketAddress(server, 80);
  663.                 // Create an unbound socket
  664.                 Java.Net.Socket sock = new Java.Net.Socket();
  665.  
  666.                 // This method will block no more than timeoutMs.
  667.                 // If the timeout occurs, SocketTimeoutException is thrown.
  668.                 int timeoutMs = 5000;   // 3 seconds
  669.                 sock.Connect(sockaddr, timeoutMs);
  670.                 exists = true;
  671.                 }
  672.                 catch(Exception exc)
  673.                 {
  674.                     return false;
  675.                 }
  676.             }
  677.             return exists;
  678.         }
  679.  
  680.     }
  681. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement