Blogengine.NET – reCaptcha 0.93 Installation Instructions

EDIT: These post exists for archival purposes only. The linked files are no longer available. These installation instructions now apply to version 0.95 First, the linked ZIP file contains the updated files for installing the Recaptcha control. UPDATES: Version 0.95 – Changed initial loading method to fix error that occurred in certain cases in IE. If upgrading from 0.94, you only need to replace the Recaptcha.cs file.Version 0.94 – Logging fixesVersion 0.93 – Added logging.Version 0.92 – The recaptcha will no longer get focus after it has been loaded. Install procedure is unchanged from version 0.91.Version 0.91 – Changed the way that Recaptcha is verified.  It should no longer be possible to bypass the recaptcha by manually executing JavaScript on the page.Version 0.9 – Initial Version Quick Installation First, back up your files in case you need to revert for any reason. If you have not modified any of the BlogEngine files, you can extract the ZIP linked to above and place all of the files into their proper locations ( the unzipped files should contain a folder structure ). There is no need to recompile. ...

February 26, 2010 · 6 min · filip

Looking back… Bloodforge several years ago

I’ve known about the Wayback Machine for a while, but for some reason, I never visited the site – until today. It was such a strange feeling seeing what Bloodforge looked like back in 2001, and being able to see how it progressed over the years (the site was up since 1999 actually, but there is no record of that in the archive). I’ve actually pulled up some items from the archive. One of those is the logo that you can see at the top-left of the page. ...

February 24, 2010 · 2 min · filip

Blogengine.NET Recaptcha 0.91 Installation Instructions

NOTE: THESE INSTALLATION INSTRUCTIONS HAVE BEEN UPDATED: To get the latest version, follow the instructions located at: NO LONGER AVAILABLE First, the linked ZIP file contains the updated files for installing the Recaptcha control. UPDATES: Version 0.92 – The recaptcha will no longer get focus after it has been loaded. Install procedure is unchanged from version 0.91.Version 0.91 – Changed the way that Recaptcha is verified.  It should no longer be possible to bypass the recaptcha by manually executing JavaScript on the page.Version 0.9 – Initial Version Quick Installation ...

February 21, 2010 · 5 min · filip

Async Recaptcha for BlogEngine.NET 1.6

The instructions on this page are no longer valid for the latest version. I really am getting sick of the spam that is appearing on this blog, so yesterday I decided to implement Recaptcha for BlogEngine.NET. I had three main goals: Easy to implement – as any control, it needs to be pretty trivial to add it to an existing blog instanceConfigurable via the Extensions panel – I really like what BlogEngine has done with their ability to edit extensions, so I wanted the control to be configurable in this wayIt had to be asynchronous – when a user posts a comment, I don’t want the whole page to refresh The final solution is pretty close to what I had in mind.  The extension is a single file that needs to be inserted into the ‘/App_Code/Controls’ folder.  In addition, two lines of code need to be added/modified in the ‘/User controls/CommentView.ascx’ file. ...

February 20, 2010 · 4 min · filip

Disabling Comments for Blacklisted IP addresses

I was reading through the discussions on Codeplex for Blogengine.NET, and a user (ALBsharah) had an interesting idea for controlling spam: if we can already determine that a user is blacklisted based on the IP, do not even give them the ability to post new comments.  The thread is available here. Making this change to BE is relatively simple.  The first change was actually creating a function which would return whether the user is blacklisted.  Comment moderation methods seem to be located in the CommentHandlers.as file in the BlogEngine.Core project. All of this code was actually already written in another method ( ModeratedByRule ), I just needed to extract that code out of that method, and modify that method to use the new code – I hate having code that does the same thing in two different places.  So, where before the function looked like the following: ...

February 18, 2010 · 3 min · filip

Flexible AutoComplete (Suggested Words) Code for Text Input Fields using JavaScript

This post was written a long time ago, and since then many other great solutions have come out to accomplish this task. I have kept my post for historical reasons, but the files are no longer available and the code on the page is no longer functional. As I’m sure you’ve seen on many websites, displaying suggestions while a user types text into a text field has become quite popular. However, I was rather disappointed with the solutions I’ve found out there. The solutions I’ve found had any combination of the following problems: ...

November 14, 2008 · 4 min · filip

C# Priority Queue Implementation for Silverlight

While writing some code for Silverlight, I realized that Silverlight does not include a PriorityQueue implementation in their libraries.  I searched around, but I couldn’t find any code that I thought was decent, so I wrote up something pretty quick.  I’ll be testing this some more in the near future, but for now, I think it has the basics.  This should be fairly quick for large collections, as the enqueue is logarithmic, while the dequeue is pretty much as fast as it can be. ...

October 20, 2008 · 3 min · filip

Very nice and flexible file upload control with progress

I needed a pretty quick way of displaying file upload progress in a ASP.NET project. In the past while working for a different employer, I’ve written my own code from scratch, and it was a complete pain in the ass.  Fortunately, after doing a bit of searching, I’ve ran across an open source control that works great.  The control is called NeatUpload and can be found at this URL: http://www.brettle.com/neatupload

October 18, 2008 · 1 min · filip

Server Side Includes (SSI) adding a blank/empty line to HTML page

While creating a page that used server side includes, I ran into some very strange behavior.  Right before each SSI, a blank line would appear on the page.  It didn’t have anything to do with margins or padding.  It was just like an empty line appeared right out of nowhere, messing up the layout.  First, I thought it was some problem with IIS and SSI, but I couldn’t find anything there. ...

August 28, 2008 · 2 min · filip

Using LoadVars sendAndLoad instead of WebService when calling web services with Flash ActionScript

I’ve ran into issues using the WebService object in Flash.  The thing is incredibly buggy.  In certain cases, it works just fine, but in other cases, it flat out does not work. In my last case, the web service loaded perfectly fine (onLoad was called), but the PendingCall would not return anything.  The onFault method was never called after I invoked my web service call, but the web service never returned either.  Examining the outgoing messages from Flash (using HTTP headers in Firefox) revealed that Flash was never even attempting to call the web service.  Flash did correctly acquire the crossdomain.xml file (which allowed access from all domains), and it did load the WSDL.  But, for whatever reason, it did not call the web method like it was supposed to. ...

August 14, 2008 · 2 min · filip