Advertisement
kostyasm123

C# Zevera hoster API functionality

May 22nd, 2016
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.92 KB | None | 0 0
  1.         public static String doLinkZevera1(String strlink, String strUserPass)
  2.         {
  3.             String link = strlink;
  4.  
  5.             String[] strSplittedUserPass = strUserPass.Split(new char[] { ':' });
  6.             String strUser = strSplittedUserPass[0]; String strPass = strSplittedUserPass[1];
  7.            
  8.             String strHTTPPesponseLine = String.Concat<String>(new List<String>() { "login=", HttpUtility.UrlEncode(strUser), "&pass=", HttpUtility.UrlEncode(strPass) });
  9.  
  10.             // Lambda function expression
  11.             Func<String, String, String, String, System.IO.Stream> func_GetIOStream = delegate (String strURL, String str_HTTPPesponseLine, String RequestMethod, String strDelimiter)
  12.             {
  13.                 var Resp = PostHTTPRequestToServer(strURL, str_HTTPPesponseLine, RequestMethod, strDelimiter);
  14.                 return (Resp != null) ? Resp.GetResponseStream() : System.IO.Stream.Null;
  15.             };
  16.  
  17.             System.IO.StreamReader streamReader = new System.IO.StreamReader(func_GetIOStream.Invoke(StrZeveraLinkerLoginRequestHeader, strHTTPPesponseLine, System.Net.WebRequestMethods.Http.Post, "&"));
  18.  
  19.             String strReadedFromStream = streamReader.ReadToEnd();
  20.             if (ValidateJSON(strReadedFromStream)) return String.Empty;
  21.  
  22.             if ("No trafic".Equals(strReadedFromStream) || String.IsNullOrEmpty(strReadedFromStream) || strReadedFromStream.Trim().Length == 0) return String.Empty;
  23.             strReadedFromStream = strReadedFromStream.Trim();
  24.             if ("Login Error".ToLower().Equals(strReadedFromStream.ToLower())) return String.Empty;
  25.  
  26.             String strEndSubscriptionDate = new Regex("EndSubscriptionDate:(.*?),", RegexOptions.Compiled | RegexOptions.IgnoreCase).Matches(strReadedFromStream)[0].Value.Replace("EndSubscriptionDate:", String.Empty).Replace(",", String.Empty);
  27.             DateTime dtEndSubscriptionDate = DateTime.ParseExact(strEndSubscriptionDate, "yyyy/M/d HH:mm:ss", CultureInfo.InvariantCulture);
  28.  
  29.             String strAvailableTodayTraffic = new Regex("AvailableTodayTraffic:(.*?),", RegexOptions.Compiled | RegexOptions.IgnoreCase).Matches(strReadedFromStream)[0].Value.Replace("AvailableTodayTraffic:", "").Replace(",", "");
  30.             int iAvailableTodayTraffic = (int)(Convert.ToInt64(strAvailableTodayTraffic)); // Gigabytes
  31.  
  32.             if (iAvailableTodayTraffic == 0 || DateTime.Compare(dtEndSubscriptionDate, DateTime.Now) < 0) { return strlink; }
  33.  
  34.  
  35.             strHTTPPesponseLine = String.Concat<String>(new List<String>() { "login=", HttpUtility.UrlEncode(strUser), "&pass=", HttpUtility.UrlEncode(strPass), "&olink=" + HttpUtility.UrlEncode(link) });
  36.             streamReader = new System.IO.StreamReader(func_GetIOStream.Invoke(StrZeveraLinkerGenerateDownloadRequestHeader, strHTTPPesponseLine, System.Net.WebRequestMethods.Http.Post, "&"));
  37.  
  38.             strReadedFromStream = streamReader.ReadToEnd();
  39.             if (ValidateJSON(strReadedFromStream)) return String.Empty;
  40.  
  41.             if (!strReadedFromStream.Contains("File Added Successfully!") || String.IsNullOrEmpty(strReadedFromStream) || strReadedFromStream.Trim().Length == 0) return String.Empty;
  42.  
  43.             String strFileID = new Regex("FileID:(.*?),", RegexOptions.Compiled | RegexOptions.IgnoreCase).Matches(strReadedFromStream)[0].Value.Replace("FileID:",String.Empty).Replace(",", String.Empty);
  44.  
  45.             strHTTPPesponseLine = String.Concat<String>(new List<String>() { "login=", HttpUtility.UrlEncode(strUser), "&pass=", HttpUtility.UrlEncode(strPass), "&FileID=" + HttpUtility.UrlEncode(strFileID) });
  46.             streamReader = new System.IO.StreamReader(func_GetIOStream.Invoke(StrZeveraLinkerDownloadRequestHeader, strHTTPPesponseLine, System.Net.WebRequestMethods.Http.Post, "&"));
  47.  
  48.             strReadedFromStream = streamReader.ReadToEnd();
  49.             if (ValidateJSON(strReadedFromStream)) return String.Empty;            
  50.  
  51.             return strlink;
  52.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement