Search Engine + flash/flex

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
g10's picture

Update: proof of concept + source code available (for flash/AS2)

Hi all,

I would like to inquiry on the current status of flash/flex search engine indexing thru drupal!
As with the addition of the services module in drupal, a couple of blogs mentioned that Mr. Nelson had made a site (or proof of concept) of it, but the link to the site was removed by request of the company (if I recall well).
I assumed that this proof of concept would pop up here, but did not see anything from it since then.

I am very intrested in how the approach was (I figure I am not the only one). More specifically on how the technique works to send the spiders to HTML pages generated by drupal, while visitors (with javascript enabled) can see the full flash site.

My intend is to setup a proof of concept of this (if none other are available), to contribute back to the community (example would be in AS2, using SWFAdress, with drupal 5 and services module)

so, Mr. Nelson, Scott, if you could shed a bit of light on this matter, this would be very welcome :)

Comments

found the original

g10's picture

found the original article:
http://www.riapedia.com/2007/01/25/a_solution_for_deep_linking_in_flash_...

which sheds some more light on the matter :)

proof of concept

g10's picture

it took some while but here it is:

http://fds.devtrack.net/

basicly, visitors with javascript enabled see a full flash site (with browser history etc. as an html site), spiders (who dont execute javascript) see the drupal html page
thru http://fds.devtrack.net/user the admin can login and manage the site

(all credits goes to Scott as he had the original idea)

//current status
- custom template who does the redirect from domain.com/mypage to domain.com/#/mypage
this happens only when javascript is available, if the page is not /user and if the user is not logged in
- custom module (not finished, more to implement)
- flash framework who loads the .swf template and data through amfphp simultaneously

//todo
- implement google analytics (or other)
- make multi-language
- implement shared assets in the module (eg. fonts used thru the site, framework then loads them once in advance so they are available in browser cache, to keep the swf files small in size)

makes use of:
- drupal, services module, amfphp module, clean urls, pathauto, cck, taxonomy
- swfobject, swfaddress
- flash

after further finetuning I will make the source available, if someone wants to contribute with ideas or the dev of the modules then let me know

Very nice! Id love to see a

zoo33's picture

Very nice! Id love to see a code example for this – finetuned or not. Please?

/ Hannes Lilljequist – SthlmConnection

The source code can be

g10's picture

The source code can be downloaded from http://fds.devtrack.net/source/FDS.zip

this is provided 'as is'
on the drupal side, it does not really obey the best practices, eg. modules are added at /modules instead of sites/all/modules etc.
on the flash side, a basic framework is available, using classes where pageviews can be extended from...

I am busy using it in a project at the moment, where I noticed some shortcomings that are not handled with this code...
eg. passing of query vars, views used in a node that need to be loaded seperately (as it only fetches the views name (vname))...
after finishing the project I will add these to the framework, at that moment it should become more usable for real-life projects (instead of being a proof of concept as it is now)

Thanks!

zoo33's picture

Beautiful, thanks!
The Drupal side of it doesn't seem to be too complicated. I'm looking forward to tracing your steps and learning from it. And don't worry, I'm not expecting this to be a readymade solution.

/ Hannes Lilljequist – SthlmConnection

Services

Group organizers

Group categories

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week