public static void WriteToLog(ImgurResponse response)
        {
            string filename = Environment.UserName.RemoveAll(Settings.Default.InvalidPathCharacters) + Settings.Default.LogFileNameSuffix;
            string path     = Path.Combine(Application.UserAppDataPath, filename);

            using (FileStream fs = new FileStream(path, FileMode.Append, FileAccess.Write)) {
                using (StreamWriter sw = new StreamWriter(fs)) {
                    sw.WriteLine("Upload Log: {0}", response.ResponseTime.ToString(Settings.Default.LongDateFormat));
                    if (response.Exception == null)
                    {
                        sw.WriteLine("Direct Link\t{0}", response.DirectLink);
                        sw.WriteLine("Imgur  Page\t{0}", response.ImgurPage);
                        sw.WriteLine("Small Thumb\t{0}", response.SmallThumb);
                        sw.WriteLine("Large Thumb\t{0}", response.LargeThumb);
                        sw.WriteLine("Delete Link\t{0}", response.DeleteLink);
                    }
                    else
                    {
                        sw.WriteLine("Exception{0}{1}", Environment.NewLine, response.Exception.Message);
                        sw.WriteLine("Stack Trace{0}{1}", Environment.NewLine, response.Exception.StackTrace);
                    }
                    sw.WriteLine();
                }
            }
        }
 public static void AddResponse(ImgurResponse response)
 {
     sessionResponses.Add(response);
     WriteToLog(response);
     if (sessionResponses.Count > Settings.Default.ResponsesToKeep)
         sessionResponses.RemoveAt(0);
 }
 public static void AddResponse(ImgurResponse response)
 {
     sessionResponses.Add(response);
     WriteToLog(response);
     if (sessionResponses.Count > Settings.Default.ResponsesToKeep)
     {
         sessionResponses.RemoveAt(0);
     }
 }
Exemple #4
0
 private void GotUploadResponse(ImgurResponse imgurResponse)
 {
     if (InvokeRequired)
     {
         Invoke(new MethodInvoker(() => GotUploadResponse(imgurResponse)));
     }
     else
     {
         imgurResponseControl.ImgurResponse = imgurResponse;
         uploadDetailsPage.Show();
         tabControl1.SelectedIndex = 1;
     }
 }
 public static ImgurResponse UploadImage(Image image)
 {
     ImgurResponse res = new ImgurResponse();
     using (WebClient wc = new WebClient()) {
         var fields = GetFields(image);
         try {
             var response = wc.UploadValues(Properties.Settings.Default.ImgurApiUrl, fields);
             res = GetImgurResponse(response);
         }
         catch (Exception exc) {
             res.Exception = exc;
         }
     }
     return res;
 }
        public static ImgurResponse UploadImage(Image image)
        {
            ImgurResponse res = new ImgurResponse();

            using (WebClient wc = new WebClient()) {
                var fields = GetFields(image);
                try {
                    var response = wc.UploadValues(Properties.Settings.Default.ImgurApiUrl, fields);
                    res = GetImgurResponse(response);
                }
                catch (Exception exc) {
                    res.Exception = exc;
                }
            }
            return(res);
        }
        private void BeginUploadImage()
        {
            BackgroundWorker worker = new BackgroundWorker();

            DoWorkEventHandler dw = null;
            dw = (s, ea) => {
                worker.DoWork -= dw;
                ImgurResponse = ImgurUploader.UploadImage(FileName);
            };
            worker.DoWork += dw;

            RunWorkerCompletedEventHandler rw = null;
            rw = (s, ea) => {
                worker.RunWorkerCompleted -= rw;
                EndUpload();
            };
            worker.RunWorkerCompleted += rw;

            worker.RunWorkerAsync();
        }
Exemple #8
0
 private void SetValues(ImgurResponse response)
 {
     if (InvokeRequired)
     {
         Invoke(new MethodInvoker(() => SetValues(response)));
     }
     else
     {
         deleteLinkTextBox.Text  = response.DeleteLink ?? string.Empty;
         directLinkTextBox.Text  = response.DirectLink ?? string.Empty;
         imgurPageTextBox.Text   = response.ImgurPage ?? string.Empty;
         smallThumbTextBox.Text  = response.SmallThumb ?? string.Empty;
         largeThumbTextBox.Text  = response.LargeThumb ?? string.Empty;
         exceptionTextBox.Text   = response.Exception == null ? string.Empty : response.Exception.Message;
         exceptionButton.Enabled = response.Exception != null;
         directLinkTextBox.SelectAll();
         copyDirectLinkButton.Focus();
         SetButtonsEnabled(true);
     }
 }
 public static void WriteToLog(ImgurResponse response)
 {
     string filename = Environment.UserName.RemoveAll(Settings.Default.InvalidPathCharacters) + Settings.Default.LogFileNameSuffix;
     string path = Path.Combine(Application.UserAppDataPath, filename);
     using (FileStream fs = new FileStream(path, FileMode.Append, FileAccess.Write)) {
         using (StreamWriter sw = new StreamWriter(fs)) {
             sw.WriteLine("Upload Log: {0}", response.ResponseTime.ToString(Settings.Default.LongDateFormat));
             if (response.Exception == null) {
                 sw.WriteLine("Direct Link\t{0}", response.DirectLink);
                 sw.WriteLine("Imgur  Page\t{0}", response.ImgurPage);
                 sw.WriteLine("Small Thumb\t{0}", response.SmallThumb);
                 sw.WriteLine("Large Thumb\t{0}", response.LargeThumb);
                 sw.WriteLine("Delete Link\t{0}", response.DeleteLink);
             }
             else{
                 sw.WriteLine("Exception{0}{1}", Environment.NewLine, response.Exception.Message);
                 sw.WriteLine("Stack Trace{0}{1}", Environment.NewLine, response.Exception.StackTrace);
             }
             sw.WriteLine();
         }
     }
 }
        private static ImgurResponse GetImgurResponse(byte[] data)
        {
            ImgurResponse res = new ImgurResponse()
            {
                Exception = null
            };
            XElement xml;

            try {
                xml = XElement.Parse(Encoding.UTF8.GetString(data));
                res.ResponseTime = DateTime.Now;
                res.DeleteLink   = xml.Element("links").Element("delete_page").Value;
                res.DirectLink   = xml.Element("links").Element("original").Value;
                res.ImgurPage    = xml.Element("links").Element("imgur_page").Value;
                res.SmallThumb   = xml.Element("links").Element("small_square").Value;
                res.LargeThumb   = xml.Element("links").Element("large_thumbnail").Value;
            }
            catch (Exception exc) {
                res.Exception = exc;
            }
            ResponseLog.AddResponse(res);
            return(res);
        }
 private static ImgurResponse GetImgurResponse(byte[] data)
 {
     ImgurResponse res = new ImgurResponse() { Exception = null };
     XElement xml;
     try {
         xml = XElement.Parse(Encoding.UTF8.GetString(data));
         res.ResponseTime = DateTime.Now;
         res.DeleteLink = xml.Element("links").Element("delete_page").Value;
         res.DirectLink = xml.Element("links").Element("original").Value;
         res.ImgurPage = xml.Element("links").Element("imgur_page").Value;
         res.SmallThumb = xml.Element("links").Element("small_square").Value;
         res.LargeThumb = xml.Element("links").Element("large_thumbnail").Value;
     }
     catch (Exception exc) {
         res.Exception = exc;
     }
     ResponseLog.AddResponse(res);
     return res;
 }
Exemple #12
0
 public PreviewForm(Image image, ImgurResponse response) : this(image) {
     GotUploadResponse(response);
 }
 private void SetValues(ImgurResponse response)
 {
     if (InvokeRequired)
         Invoke(new MethodInvoker(() => SetValues(response)));
     else {
         deleteLinkTextBox.Text = response.DeleteLink ?? string.Empty;
         directLinkTextBox.Text = response.DirectLink ?? string.Empty;
         imgurPageTextBox.Text = response.ImgurPage ?? string.Empty;
         smallThumbTextBox.Text = response.SmallThumb ?? string.Empty;
         largeThumbTextBox.Text = response.LargeThumb ?? string.Empty;
         exceptionTextBox.Text = response.Exception == null ? string.Empty : response.Exception.Message;
         exceptionButton.Enabled = response.Exception != null;
         directLinkTextBox.SelectAll();
         copyDirectLinkButton.Focus();
         SetButtonsEnabled(true);
     }
 }
 private void GotUploadResponse(ImgurResponse imgurResponse)
 {
     if (InvokeRequired)
         Invoke(new MethodInvoker(() => GotUploadResponse(imgurResponse)));
     else {
         imgurResponseControl.ImgurResponse = imgurResponse;
         uploadDetailsPage.Show();
         tabControl1.SelectedIndex = 1;
     }
 }
 public PreviewForm(Image image, ImgurResponse response)
     : this(image)
 {
     GotUploadResponse(response);
 }