I am writing a module that will create a node that includes a mini-gallery of images. Its primary intended use will be for displaying "Featured Properties" for real estate sites. If there's interest, once I've gotten it working, I'll post it here for other developers.

I originally had planned to use a flexinode, but it just wasn't doing what I wanted. Most of the functionality (as it stands now) comes from the Image module, although I have some questions (later in the post) about how to integrate with that module.

An authorized user ("agent") will be able to create nodes of this type. They will add the specific details of the property (address, town, type of property -- duplex, two-story, etc. -- features -- garage, basement, etc.). After these are entered, they will be able to upload one or more images associated with the property.

Ideally, I would like to have an "upload" button on the form (which flexinode gives). However, after one image has been uploaded, I would like to allow an indeterminate number of images to be added as well. I could set an arbitrary limit, such as 4 or 8, and set up the appropriate fields, but that seems like a kludge.

In addition, I want to be able to have more control about how to display the node. For instance, to show one image at its "preview" size, with the others at "thumbnail" size.

I've been studying the Image module for inspiration, and have set up a database table that will hold an unlimited number of associated image nodes with a property. One of these can also be designated as the "primary image" (the first being the default).

When a property node is deleted, it also calls the image_delete function for the associated images. I plan to add a setting that will allow the "agent" to toggle this functionality (for instance, if they want images to remain in the database after a property has been deleted). Probably the default will be that images won't be deleted.

What's still to be done:

1) I do not know how to hook into the image node -- specifically, to put an upload button on the property node creation form. I'm assuming that I use image_form for this, but I can't figure out how to call it properly, making sure a new image node is created.

2) I want to hook into the taxonomy code for types of properties, so that the "agent" can create specific types and have them automatically be created as categories. I'll study how galleries are implemented for this.

3) I'd like to have a gallery created automatically for a property, so that the associated images could be viewed as a gallery rather than as a property. Also makes it more configurable for other uses. I'm not sure that I'll implement this right away (or at all, necessarily), because my current client won't need this functionality.

I'd appreciate any help or advice anyone would like to give for this project. Should I set up a sandbox for this? Or am I going about all this the wrong way, and is there an easier way to do it?

Thanks,
Aaron

Culture Fix Web Identity & Design
Digital Folk Art (my blog)

Comments

raverX’s picture

Unfortunately I can't give you the advice you're looking for...

However... I would like to express an interest in this module. We work with several property groups and are always looking for ways to use Drupal as the backing solution when possible, rather than write a custom system for each client.

This kind of development is definitely a step in the right direction to making Drupal a very powerful solution :)

Thanks :)

..:: phpqld.org | ravesafe.com | raverx.org ::..

aaron’s picture

I'm making good progress on it. I've changed my specs a bit, and hope to have a protocol working soon. I could definitely use some feedback, particularly from the viewpoint of people experienced with the clients who might use it. I also want to make it easily customizable. I hope to be able to post it in the next day or two.

- Aaron

Culture Fix Web Identity & Design
Digital Folk Art (my blog)

boris mann’s picture

See rentalmonster.ca.

Jordan! We gonna get the code for this?

aaron’s picture

I'm assuming it's not available, however, so that's what I'm trying to replicate. I'll keep you posted on the progress. Just integrating the image handling right now.

On the other hand, if someone else has something already in the works, I'd be glad to put my energy towards helping with that project instead.

- Aaron

Culture Fix Web Identity & Design
Digital Folk Art (my blog)

kbahey’s picture

Do not assume that this is not available without first contacting Jordan and see what he says.
--
Drupal development and customization: 2bits.com
Personal: Baheyeldin.com

--
Drupal performance tuning and optimization, hosting, development, and consulting: 2bits.com, Inc. and Twitter at: @2bits
Personal blog: Ba

boris mann’s picture

He's been really busy, but did say initially that he wanted to contribute the code.

Bevan’s picture

I once contacted that company about the website and the software they used for it, for a client's project. They talked about $10k as an initial payment. I didn't reply. There are many good reasons I use open-source, and even though the fact it's free is NOT one of those reasons, neither is $10,000!!

Aaron, I'm downloading your module discussed here http://drupal.org/node/36099 to try it out. :)

What happened to Open-Realty? Has anyone thought about making some sort of Bridge for it? I use it alot, and it's definately the only really powerful OS property web system out there. Hot property and Jomres (both dependant on Joomla) are also good, but not free, and cost $100 to $150 each. It would save a lot of time in re-inventing the wheel for folks like Aaron.

Cheers,
Bevan/ -- Newbie to Drupal :)

LateNightDesigner’s picture

This is a simply amazing implementation of drupal. Fantastic and I plan to watch this thread in hopes we get a module release!
//---------------------------------------
Latenightdesigners.com- Giving IMD a Fighting Chance

coupet’s picture

aaron,

Any progress? as mentioned, creating and publishing beta code for review might be the way to get things moving!

adding image upload functionality to your module
See Node: 30944

Apache is bandwidth limited, PHP is CPU limited, and MySQL is memory limited.

carlosastrada’s picture

Looks like there is something similar (HOME module), but I went ahead and developed this functionality. It includes a nice administrative interface. Check out the demo here: http://drupal.xagax.com/amazprop

www.xagax.com