/// <summary> /// Upload hình lấy thông tin từ file Excel /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnUpdateAll_Click(object sender, EventArgs e) { //Check data if (dtDataTemp.Rows.Count == 0) { XtraMessageBox.Show("Not found data!", "Message"); return; } //Check data if (dtDataTempColor.Rows.Count == 0) { XtraMessageBox.Show("No themes selected!", "Message"); return; } panelControlAction.Enabled = false; Thread t = new Thread(new ThreadStart(() => { foreach (DataRow dr in dtDataTemp.Rows) { try { CoreLibary.writeLogThread(lsBoxLog, "Uploading " + dr["Title"].ToString(), 3); UploadAndDownload(dr); CoreLibary.writeLogThread(lsBoxLog, "Uploaded " + dr["Title"].ToString(), 1); } catch (Exception ex) { CoreLibary.writeLogThread(lsBoxLog, "Upload Error: " + ex.Message, 2); } } panelControlAction.Invoke((MethodInvoker) delegate { panelControlAction.Enabled = true; }); })); t.Start(); }
/// <summary> /// Chuyển hình đã upload lên Sunfrog vào folder khác /// </summary> /// <param name="fileName">đường dẫn hình hiện tại</param> private void moveImageUploaded(string fileName) { try { if (File.Exists(fileName)) { string newFileName = dirSaveImageUploaded + Path.GetFileName(fileName); File.Move(fileName, newFileName); } } catch (Exception ex) { CoreLibary.writeLogThread(lsBoxLog, ex.Message, 2); } }
/// <summary> /// Upload file to Sunfrog /// </summary> /// <param name="dr">Nội dụng dữ liệu cần upload</param> private void UploadAndDownload(DataRow dr) { //Config Data var frontbackImage = dr["FrontBack"].ToString().Trim(); var pathImage = dr["Image"].ToString().Trim(); var title = dr["Title"].ToString().Trim(); var category = getIDCategory(dr["Category"].ToString().Trim()); var description = dr["Description"].ToString().Trim(); var keyword = CoreLibary.convertStringToJson(dr["Keyword"].ToString().Trim()); var collection = dr["Collection"].ToString().Trim(); var themes = getListTheme(); var imgBase64 = CoreLibary.ConvertImageToBase64(pathImage); //themes = "{\"id\":8,\"name\":\"Guys Tee\",\"price\":19,\"colors\":[\"Orange\",\"Yellow\"]}"; //themes += ",{\"id\":19,\"name\":\"Hoodie\",\"price\":34,\"colors\":[\"White\",\"Green\"]}"; //2. Upload Image var strBack = ""; var strFront = ""; if (frontbackImage == "B") { strBack = "";// Resources.ImageBack; } else { strFront = "";// Resources.ImageFront; } var dataToSend = ""; dataToSend = "{"; dataToSend += "\"ArtOwnerID\":\"0\",\"IAgree\":\"true\""; dataToSend += ",\"Title\":\"" + title + "\""; dataToSend += ",\"Category\":\"" + category + "\""; dataToSend += ",\"Description\":\"" + description + "\""; dataToSend += ",\"Collections\":\"" + collection + "\""; dataToSend += ",\"Keywords\": [" + keyword + "]"; dataToSend += ",\"imageFront\":\"" + strFront + "\""; dataToSend += ",\"imageBack\":\"" + strBack + "\""; dataToSend += ",\"types\":" + themes; dataToSend += ",\"images\":[{\"id\":\"__dataURI: 0__\",\"uri\":\"data:image/png;base64," + imgBase64 + "\"}]"; dataToSend += "}"; byte[] postDataBytes2 = Encoding.ASCII.GetBytes(dataToSend); string getUrl = "https://manager.sunfrogshirts.com/Designer/php/upload-handler.cfm"; HttpWebRequest getRequest = (HttpWebRequest)WebRequest.Create(getUrl); //getRequest.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:49.0) Gecko/20100101 Firefox/49.0"; //getRequest.Accept = "*/*"; getRequest.Method = "POST"; //getRequest.AllowWriteStreamBuffering = true; //getRequest.AllowAutoRedirect = true; getRequest.Host = "manager.sunfrogshirts.com"; getRequest.Headers.Add("X-Requested-With", "XMLHttpRequest"); //getRequest.Headers.Add("Accept-Language", "vi-VN,vi;q=0.8,en-US;q=0.5,en;q=0.3"); //getRequest.Headers.Add("Accept-Encoding", "gzip, deflate, br"); getRequest.ContentType = "application/json; charset=UTF-8"; getRequest.Referer = "https://manager.sunfrogshirts.com/Designer/"; getRequest.CookieContainer = cookieContainer; getRequest.ContentLength = postDataBytes2.Length; getRequest.Headers.Add("Origin", "https://sunfrogshirts.com"); getRequest.KeepAlive = true; using (Stream sr = getRequest.GetRequestStream()) { //sr.Write(dataToSend); sr.Write(postDataBytes2, 0, postDataBytes2.Length); sr.Flush(); sr.Close(); } HttpWebResponse getResponse = (HttpWebResponse)getRequest.GetResponse(); string sourceCode = ""; using (StreamReader sr = new StreamReader(getResponse.GetResponseStream())) { sourceCode = sr.ReadToEnd(); } //Dictionary<string, object> dataUpload = PostDataAPI(getRequest, dataToSend); //if (int.Parse(dataUpload["status"].ToString()) == -1) //{ // CoreLibary.writeLogThread(lsBoxLog, "Step 2: " + dataUpload["data"].ToString(), 1); //} //sourceCode = dataUpload["data"].ToString(); var obj = JObject.Parse(sourceCode); if (int.Parse(obj["result"].ToString()) == 0) { CoreLibary.writeLogThread(lsBoxLog, "Collection:" + obj["collectionName"].ToString() + " - " + obj["description"].ToString(), 2); } else { CoreLibary.writeLogThread(lsBoxLog, "Uploaded " + obj["description"].ToString(), 1); } //Chuyển hình sang folder Uploaded //moveImageUploaded(pathImage); }
/// <summary> /// Upload 1 hình /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnUpdate_Click(object sender, EventArgs e) { if (dtDataTempColor.Rows.Count == 0) { XtraMessageBox.Show("No themes selected!", "Message"); return; } var title = info_txtTitle.Text.Trim(); var obj = info_cbbCategory.GetSelectedDataRow(); var category = ((SunfrogShirts.Category)obj).Name; var description = info_txtDescription.Text.Trim(); var keyword = info_txtKeyWord.Text.Trim(); var collection = info_txtCollection.Text.Trim(); if (string.IsNullOrEmpty(title) || string.IsNullOrEmpty(description) || string.IsNullOrEmpty(keyword) || string.IsNullOrEmpty(collection) || string.IsNullOrEmpty(currentImageUploadOne)) { XtraMessageBox.Show("Title, Description, Keyword, Collection and Image is not empty.", "Message"); return; } panelControlAction.Enabled = false; Thread t = new Thread(new ThreadStart(() => { try { dtDataTemp.Rows.Clear(); DataRow dr = dtDataTemp.NewRow(); //Load Data if (info_ckFront.Checked) { dr["FrontBack"] = "F"; } else { dr["FrontBack"] = "B"; } dr["Image"] = currentImageUploadOne; dr["Title"] = title; dr["Category"] = category; dr["Description"] = description; dr["Keyword"] = keyword; dr["Collection"] = collection; dtDataTemp.Rows.Add(dr); DataRow drItem = dtDataTemp.Rows[0]; CoreLibary.writeLogThread(lsBoxLog, "Uploading Item " + drItem[2].ToString(), 3); UploadAndDownload(drItem); CoreLibary.writeLogThread(lsBoxLog, "Uploaded Item " + drItem[2].ToString(), 1); } catch (Exception ex) { CoreLibary.writeLogThread(lsBoxLog, "Uploaded image to Sunfrog", 2); CoreLibary.writeLogThread(lsBoxLog, ex.Message, 2); XtraMessageBox.Show("Upload failed.\n" + ex.Message, "Message"); } panelControlAction.Invoke((MethodInvoker) delegate { panelControlAction.Enabled = true; }); })); t.Start(); }
/// <summary> /// Đăng nhập vào chương trình /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnLogin_Click(object sender, EventArgs e) { frmWait frm = new frmWait(); frm.SetCaption("Connecting To Server"); frm.SetDescription("Please wait..."); Thread t = new Thread(new ThreadStart(() => { HttpWebRequest wRequest1 = (HttpWebRequest)WebRequest.Create("https://manager.sunfrogshirts.com/"); //wRequest.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0"; //wRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"; //wRequest.Referer = "https://manager.sunfrogshirts.com/"; wRequest1.Method = "GET"; //wRequest.KeepAlive = true;lo wRequest1.CookieContainer = cookieContainer; var cookieHeader1 = ""; WebResponse resp1 = wRequest1.GetResponse(); cookieHeader1 = resp1.Headers["Set-cookie"]; foreach (Cookie cookie in ((HttpWebResponse)resp1).Cookies) { cookieContainer.Add(cookie); } var userName = sys_txtAccount.Text; var password = sys_txtPassword.Text; //data //username=lchoang1995%40gmail.com&password=Omega%40111&login=Login ASCIIEncoding encoding = new ASCIIEncoding(); var enUserName = HttpUtility.UrlEncode(userName); var enPassword = HttpUtility.UrlEncode(password); string data = "username="******"&password="******"&login=Login"; byte[] postDataBytes = encoding.GetBytes(data); HttpWebRequest wRequest = (HttpWebRequest)WebRequest.Create("https://manager.sunfrogshirts.com/"); //wRequest.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0"; //wRequest.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"; //wRequest.Referer = "https://manager.sunfrogshirts.com/"; wRequest.Method = "POST"; wRequest.ContentType = "application/x-www-form-urlencoded"; wRequest.ContentLength = postDataBytes.Length; //wRequest.KeepAlive = true;lo wRequest.CookieContainer = cookieContainer; using (Stream sr = wRequest.GetRequestStream()) { sr.Write(postDataBytes, 0, postDataBytes.Length); } var cookieHeader = ""; WebResponse resp = wRequest.GetResponse(); cookieHeader = resp.Headers["Set-cookie"]; //cookieContainer = new CookieContainer(); //foreach (Cookie cookie in ((HttpWebResponse)resp).Cookies) //{ // cookieContainer.Add(cookie); //} var pageSource = ""; using (StreamReader sr = new StreamReader(resp.GetResponseStream())) { pageSource = sr.ReadToEnd(); } //<strong style="font-size:1.5em; line-height:15px; padding-bottom:0px;" class="clearfix">(.*?)</strong> var regex = "<strong style=\"font-size:1.5em; line-height:15px; padding-bottom:0px;\" class=\"clearfix\">(?<myId>.*?)</strong>"; MatchCollection matchCollection = Regex.Matches(pageSource, regex); if (matchCollection.Count == 0) { XtraMessageBox.Show("Login is disabled, and the password is incorrect!", "Message"); frm.Invoke((MethodInvoker) delegate { frm.Close(); }); imgLogo.Invoke((MethodInvoker) delegate { imgLogo.Visible = false; }); CoreLibary.writeLogThread(lsBoxLog, "User Login", 2); return; } foreach (Match match in matchCollection) { this.Invoke((MethodInvoker) delegate { this.Text += " - [Your Seller ID: " + match.Groups["myId"].Value + "]"; }); } frm.Invoke((MethodInvoker) delegate { frm.Close(); }); imgLogo.Invoke((MethodInvoker) delegate { imgLogo.Visible = true; }); groupControlInfo.Invoke((MethodInvoker) delegate { groupControlInfo.Enabled = true; }); groupControlSelectTheme.Invoke((MethodInvoker) delegate { groupControlSelectTheme.Enabled = true; }); groupControlTheme.Invoke((MethodInvoker) delegate { groupControlTheme.Enabled = true; }); panelControlAction.Invoke((MethodInvoker) delegate { panelControlAction.Enabled = true; }); CoreLibary.writeLogThread(lsBoxLog, "User Login", 1); })); t.Start(); frm.ShowDialog(); }