Resolving Pligg Installation Error: The pligg_config table is empty or does not exist

So here I was, trying to setup a Pligg website on my Windows 7 machine. I’ve just gotten the latest MySQL and PHP installed. Setup all the permissions required, and ran the installer.php. All seem to go well until, I got to table setup page.. Continue reading “Resolving Pligg Installation Error: The pligg_config table is empty or does not exist”

BlogEngine.net Extension for Embedding JotForms form

JotForm is one the best online Form Builders out there. It offers more enticing features on its free edition than any of its rivals.

But, why would a developer need an online Form Builder? If you are building a site from scratch or if you are using a powerful CMS such as DNN, you’d probably build the form yourself or use a form builder module. But, increasingly more people are deploying BlogEngine.net as a CMS as it’s much more simpler to theme, customize, deploy, train and maintain. And BE.NET, meant to be a blog engine doesn’t (yet!) have the cabailities to build forms on the fly: Nor there are any modules (yet!) to do the same. So, the likes of JotForm becomes a really good option.

The problem? Well, there’s no easy way to embed a JotForm on a BE page or a post. That’s why I went ahead and built this simple extension. Continue reading “BlogEngine.net Extension for Embedding JotForms form”

BreadCrumbs Control: Final Touches and Demo Project

After weeks of inactivity, I finally managed to get a demo project in place for the BreadCrumbs controls. You can download it here. The code includes few updates I have made since the last version. For the sake of flexibility, I have kept the basic control as simple as possible. In the demo, I have added few additional helper classes to provide the full functionality desired.

Extending the control is pretty simple too. For instance, to display the menus for each of the sub items in a list item, you handle the SubItemClicked event. The SubItemClickedEventArgs passed to you along with this event provides you with the row index, column index and the bottom-left corner pixel coordinates of the sub item. In the demo app, this event handled as;

void ListBox_SubItemClicked(object sender, BreadCrumbsListBox.SubItemClickedEventArgs e)    
{    
    ContextMenuStrip menu = null;    
    if (e.ColumnIndex == 1 && breadCrumbsList.ListBox.SelectedItem != null)    
        menu = GetTemplateMenu(breadCrumbsList.ListBox.SelectedIndex);    
    else    
        menu = _entityMenu;    
    menu.Show(breadCrumbsList, breadCrumbsList.PointToClient(e.BottomLeftCorner));    
}    

Here, the _entityMenu is a pre-constructed menu while as the “Template Menu” is reconstructed every time based on the selection.

Finding my way back to the Bread Crumbs Project

Due to a life changing experience that I ran into 2 weeks ago, I’ve been unable to continue on with my regular R&D work. I’ve got a small breather that might last the rest of the week and so figured I should try to finish up some of my projects: 1st off, I managed some work on the Bread Crumbs list control.

Here’s what the control looks right now:


Items support Hot-Tracking

Vista’s Windows Explorer style item selection

Sub-item selection

Sub-item Menu Support

Also added support for item editing:

Design

The controls design is pretty basic and the code not overly elegant at this stage.

Each row on the List Box is an instance of the BreadCrumbsItem class. The BreadCrumbsItem holds an array of strings with each element corresponding to  an individual column. The list box requires that you insert only items with equal number of columns. Otherwise an exception will be thrown.

I had trouble getting the scrollbars inherent in UserControl/ContainerControl to function properly. The OnScroll method wasn’t receiving the proper scroll value and was reverting to 0 all the time. So, I had to go with adding a vertical scroll bar manually. Anyway, check out the code (49.5 KB zipped folder).