Testing out a new popup video block


Adding my new popup video block to this blog post is the final test before I submit it to the marketplace.  Supports flowplayer, vimeo and youtube files, with thumbnail, titles and text plus an optional link.  I'm really proud of it, I think it will sell really well in the concrete5 marketplace.

This is probably the most intricate GUI that I've programmed to date.  There's a lot of interactivity happening in the block add/edit forms, toggling and hiding different form fields as needed.  This turns out to make validating the form quite difficult too, because I have to do that with javascript.  So I'm basically reading out the values of each radio button set and figuring out which other form fields to check and validate based on those.  It gets pretty complicated, actually.  But everything works and functions properly, so I'm going to go with it.

The one thing that I think might be a gotcha is that the popup that we're using is the jQuery tools overlay, and it was positioning the modal in the wrong spot with my theme.  I'm not sure how to get around this - I might have to modify their code to append the modal to the end of the document so that it's not contained within another div - that was the problem, the 'container' class on my page body had position: relative; then the modal was absolutely positioned from there. 

Not sure how much this will be an issue, but I could see getting a fair amount of support requests from this.  Other than that, I think that the block is really solid and it does some really neat stuff.  I really like the link picker outside of the wysiwyg editor, and paring back the editor to just the essentials.  I think this is easier on the end user because it's not like you are throwing in everything and the kitchen sink.  I mean, you don't want them able to add links or images or files inside of the details text, it's not formatted to have that kind of information within it.  So the limited GUI makes sense there and kind of leads the end user towards a clear concise paragraph instead of a whole novel for the text.

I'm not sure how many other templates would be needed, I thought about doing some more detailed ones but decided against it.  I think just the left / right / above should be good for most use cases, and it's kept to a minimum of formatting to make sure it fits in with the end theme.

It should be interesting to see how this one does in the marketplace and how much support time it requires.  It's the first test block for us over at Hutman, we don't do any software sales now.  But this block and about three others from a recent project could be turned around and resold in the marketplace.  I think this one has the most widespread appeal.  If this one does well it could well be worth our time to spend a little time working on stuff for the marketplace.  This would give us a wider platform to work from when we are doing our sites for customers - having a library of addons that we don't have to license from other developers would be good.

Anyway, that's the kind of stuff I'm working on for my day job.  The next project is using our old cms to make a huge complicated site that doesn't make sense for concrete 5 - it's going to be a lot of coding from the ground up with no framework and I'll probably learn a lot along the way.  It's a couple month long project, to give you any idea. 

With concrete 5 I made all of this in two weeks:

  1. The block shown here plus
  2. Custom news module (dashboard and front-facing pages)
  3. Custom events module (dashboard and front-facing pages)
  4. Custom Gallery Block - text and images cycler with manual start/stop or autoplay
  5. Expanding Bio Block - this one would be really sweet if tied in with the user attributes
  6. Custom Blocks with the new Designer Content addon
    1. Address - display Title, address lines 1&2, phone and email with optional link to a map page
    2. Callout - custom sidebar content configurable with 8 custom templates
    3. News Room Item (display title and content with a PDF download or popup video)
  7. Two custom contact forms, using the external forms block to collect information and email the results
  8. Custom Block Tempates
    1. Autonav - 2
    2. Google Map - 4
    3. Image - 12
  9. Custom secondary login page for members only section
  10. Custom theme from supplied html mockups

Think about that, then think of what kind of functionality we'd need to build and take TWO MONTHS to do it.  It kind of boggles my mind a little bit to be taking on a project of this size, hope that it goes as smoothly as the last project did.