Hi everyone,

After 6months of development (developed completely on my own) and alot of blood, sweat, tears and changed minds yesterday i released my actions sports community website; www.adrenalinehub.com.
It will be in BETA version for about a month to iron out any bugs and problems.

Basically the site focuses around video and photo sharing as well as each user having a homepage (similar to my space).

There's quite afew custom and modified modules, i've also added afew Ajax widgets here and there (mainly to help me learn ajax better).

The main modifications took place in the image and video modules.
Image.module
Changed the image.module to supports user ablums, improved (in my mind) workflow (insert 3 images at a time), added ajax progress bars and afew other things (imagemagick support).

Video.module
Changed it to support referencing to YouTube videos or uploading with own videos with videoEgg, improved the workflow and also made it so users can add a video to their homepage.

i must credit project opus for the shout.module i used (http://docs.projectopus.com/releases/shout) i did modify afew things; adding auto approve feature and email notification to users when they get a new shout, i hoping to add ajaxing to this in the future so users can add a shout without leaving the users page.

user_load function modification
one core modification i made (which people may or may not be interested in or approve of) was to make a user_load_basic function to save on database calls.
i noticed alot of the time i (and alot of other modules) were calling user_load just to get the username and email of a given user id, and user_load invokes the load hook in all other modules and performed quite a few needless (for my site) queries, so user_load_basic does the same as user_load minus the invoke hook and getting the user role is optional depending what params you send to the function. this really helped cut the number of queries on the site. i can provide more info on this if anyones interested.

oh yeah its running drupal 4.7.

anyways, any comments, suggestion or bug reports would be nice, still aload of cool features to be added to the site over the coming months so i'll kept the community posted.

cheers
Tom

Comments

toma’s picture

I just want to say, very nice job, nice navigation, i have a lot of question how to ?! many users will be interesting to build such a site...

i just want to know how to make a tab News Reviews in your "front page" !

Can you share your custom module / work !!?

Nice Work

---
Daily webmaster news and directory (digg style)
http://www.dwebmaster.com

thomjjames’s picture

Hi,

thanks for your kind words, i'm happen to release most of my code at a later date when it has been fully debug, still a few bugs here and i know my coding style needs improving.

the tabs however are done using the jstools.module (http://drupal.org/project/jstools), really a brilliant set of modules. I customised it abit using CSS to allow for different size tabs depending what page its on (also use tabs on image pages http://adrenalinehub.com/node/10).

any more questions are welcome

cheers
Tom

www.adrenalinehub.com

______________________________________________
https://tomswebstuff.com

patchak’s picture

Your site is really nice!!! I guess I'll have a look as well at that tabbing module you're using as my new site also relies a lot on tabbing...

anyway great site!

patchak

jivan23’s picture

Yeah I like the site also I did some similar stuff with a sports shopping site
Jivan

pfulton’s picture

Hi Tom,

Great site and nice design!

*edit*

I just re-read your original post and found the answer to my question.

-Patrick

Theo’s picture

Very nice site design! It looks professional and modern.

-theo

Unlimited FREE Job Posting
http://www.uberjobs.com

SirMoby’s picture

Now that's how a Drupal Community should look. Great job!

thomjjames’s picture

thanks everyone!!
so glad everyone digs the site!

we're still looking for people to test the site, so if you're into extreme /action sports then feel free to sign up (http://adrenalinehub.com/signup), upload photos and video, these features haven't been tested as much as i'd like yet!

we're currently making a few changes here and there to make it more useable.

quick note on site speed (general not just about my site):
I read alot of posts here saying "drupal is too slow" or "my drupal site takes ages to load" and when i had afew people initially saying our site was slow i jumped to the same conclusion; "drupal is slow"! before you browse away from here, I AM NOT KNOCKING DRUPAL, I'M DEFENDING IT!

Then i found this brilliant link on drupal somewhere: http://www.websiteoptimization.com/services/analyze/ it confirmed my site was slow but not because of drupal, basically the slowness was of my own doing! my site was taking 83 secs on a 56k connection and performing a whooping 88 HTTP requests on each page load.
I looked in my theme and realised i was loading alot of unnecessary HTTP requests ie. loading CSS and JS files that weren't being used.
Next i merged and compressed my CSS files using http://www.cssdrive.com/index.php/main/csscompressor/. This cut the HTTP requests and file sizes. I then removed all white space and unnecessary speach marks from my HTML theme code something i never though would make a big difference.
anyway you're probably getting bored now; i cut my loading down to 33secs (56K connection) and HTTP requests to 64 or less (depends which page); not ideal but not bad for a fairly rich media site me thinks.
i also have zlib http compression on which is amazing!

my conclusion is that before you go blaming Drupal for your site slowness look closer to your theme. a few days work here and there can make all the difference!!
If anyone read all of that well done, i was boring myself towards the end, it helped me alot so i think its important to share!!

any suggestions / comments on the site are welcome

cheers
Tom

http://adrenalinehub.com/thomjjames - my profile on adrenalinehub.com

______________________________________________
https://tomswebstuff.com

thomjjames’s picture

Hello again,

right i noticed from my site hit counter that people are still looking at this post so i thought i'd post a quick update (if anyone cares).

We've improved the sign up process. we noticed a few people signing up but would never validate their account the majority of these users had hotmail accounts (damm hotmail), so its now set up to log users straight in after they sign up but with limited access, basically they can make their homepage, add images and videos but can't interact with other users until they validate their email. I'm not sure is this is the best method but we're gonna see how it goes. if anyone has a better method i'd love to hear it??

anyways only a short post this time.
i can keep this post updated as the site develops if anyones interested??

questions / suggestions about the site are welcome
cheers
Tom

http://adrenalinehub.com/thomjjames

______________________________________________
https://tomswebstuff.com

hectorplus’s picture

I read all your comments. You've done a nice job with your site. The tabbed navigation is interesting. Keep us informed!

Tecito.com
Comunidad Latina en Canada, regístrate ya! Join the growing latin community in Canada.

thomjjames’s picture

Hi everyone,

Just a quick feature update.
We've just added a new "recent visitors" block to our users homepages. Basically, it records the last 6 visitors to a users homepage and is aimmed at helping connect users with each other. see the right column of my profile page (http://adrenalinehub.com/thomjjames) for an example.

If you have any problems / suggestions let us know!!

told you it was a quick update,

Oh yeah, we've just started working on an improved design for the site. We hope to have it ready for when we move out of our BETA version in the new year!

cheers
Tom

--------------------------------
http://adrenalinehub.com/thomjjames - Action Sports Community
http://www.sustravel.co.uk - Sustainable Travel Magazine

______________________________________________
https://tomswebstuff.com

patchak’s picture

Hey Tom...

I was trying the other day to insert views into tabs from jstabs.module. I think that is what you did on your site right?? Did you insert views in the tabs or that is custom php code??

Thanks for any help you could give me on inserting views into tabs!

cya,

Patchak

toma’s picture

you can make tabs with views, using javascript tab from dynamic drive
http://www.dynamicdrive.com/dynamicindex17/tabcontent.htm

patchak’s picture

Hi toma, do you mind giving me more detail on how to use those tabs with views???

Thanks

toma’s picture

Hi

You may need to add html code something like :

<ul id="maintab" class="shadetabs">
<li class="selected"><a href="#" rel="tcontent1">Menu1</a></li>
<li><a href="#" rel="tcontent2">Menu2</a></li>
<li><a href="#" rel="tcontent3">Menu3</a></li>
<li><a href="#" rel="tcontent4">Menu4</a></li>
</ul>

<div class="tabcontentstyle">

<div id="tcontent1" class="tabcontent">
 my view for Menu1 here
</div>

<div id="tcontent2" class="tabcontent">
my view for Menu2 here 
</div>

<div id="tcontent3" class="tabcontent">
my view for Menu3 here
</div>

<div id="tcontent4" class="tabcontent">
my view for Menu4 here
</div>

</div>

<script type="text/javascript">
//Start Tab Content script for UL with id="maintab" Separate multiple ids each with a comma.
initializetabcontent("maintab")
</script>

i am using panels to add my tabs
in your page.tpl.php you need to call the css and javascript something like :

<title><?php print $head_title ?></title>
  <link rel="stylesheet" type="text/css" href="/misc/tabs/tabcontent.css" />

<script type="text/javascript" src="/misc/tabs/tabcontent.js">

/***********************************************
* Tab Content script- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

</script>
  <?php print $head ?>
....

you need to make the link to the files from dynamicdrive i am using misc/tabs

To call view with php

<?php
$view = views_get_view('myviewname');
print views_build_view('embed', $view, $current_view->args, false, 5)
?>

Get 5 list from the view with myviewname, you can add this code with your different view and replace text (ex:my view for Menu4 here)
example with my site

<ul id="maintab" class="shadetabs">
<li class="selected"><a href="#" rel="tcontent1">Divers</a></li>
<li><a href="#" rel="tcontent2">Emploi</a></li>
<li><a href="#" rel="tcontent3">Immobilier</a></li>
<li><a href="#" rel="tcontent4">Rencontres</a></li>
</ul>

<div class="tabcontentstyle">

<div id="tcontent1" class="tabcontent">
<?php
$view = views_get_view('annonceslist');
print views_build_view('embed', $view, $current_view->args, false, 5)
?>
</div>

<div id="tcontent2" class="tabcontent">
<?php
$view = views_get_view('emploilist');
print views_build_view('embed', $view, $current_view->args, false, 5)
?>
</div>

<div id="tcontent3" class="tabcontent">
<?php
$view = views_get_view('Immobilierlist');
print views_build_view('embed', $view, $current_view->args, false, 5)
?>
</div>

<div id="tcontent4" class="tabcontent">
<?php
$view = views_get_view('rencontrelist');
print views_build_view('embed', $view, $current_view->args, false, 5)
?>
</div>

</div>

<script type="text/javascript">
//Start Tab Content script for UL with id="maintab" Separate multiple ids each with a comma.
initializetabcontent("maintab")
</script>
thomjjames’s picture

Hi,

i used some custom PHP to simple pull content from other areas of the site.

This forms the tabs:

<div class=tabs150 style="margin-top:10px; ">
<?php 
$output1 = '<div class=inner>'; 
$output1 .= _get_news(); 
$output1 .= '</div>'; 
$tab .= theme('tabs_tab_page', t('<B>News</B>'), $output1); 
$output1 = '<div class=inner>'; 
$output1 .= _get_chatter(); 
$output1 .= '</div>'; 
$tab .= theme('tabs_tab_page', t('<B>Chatter</B>'), $output1); 
$output = theme('tabs_tabset', 'home', $tab, 'grey_red_90'); 
echo $output;
?>
</div>

Then the _get_news() and _get_chatter() functions call the content from the database. I can post that code as an example if anyone wants it?

hope that helps,

Tom
____________________________________________
http://adrenalinehub.com/thomjjames - Action Sports Community
http://www.sustravel.co.uk - Sustainable Travel Magazine

______________________________________________
https://tomswebstuff.com

patchak’s picture

Yeah Tom! I'm interested in seeing that code, it help to learn php at the same time!

Thanks again

discursives’s picture

Hi Thom, great site. I'd like to know how you smashed the views_get_view php into that $output variable.

I'm at the same place in my work right now. I've got the views configured and my php is just bad enough that I haven't built a function yet.

I can't figure out how to merge:

 <?php
$view_name = 'teaserblog1'; //name of my first view which goes in the blog tab
$limit = 3; // number of returns
$view_args = array();
print views_build_view('embed', views_get_view($view_name), $view_args, FALSE, $limit);
?>

and my second view:

 <?php
$view_name = 'teaserstory1'; //name of my second view which goes in tab 2
$limit = 3; // number of returns
$view_args = array();
print views_build_view('embed', views_get_view($view_name), $view_args, FALSE, $limit);
?>

with the tabs code:

<?php
  $tabs .= theme('tabs_tab_page', t('Blogs'), t('This is the place where I want the first view'));
  $tabs .= theme('tabs_tab_page', t('Stories'), t('This is the place where I want the second view'));
  $output = theme('tabs_tabset', 'example', $tabs);
  print $output;
?>

I notice in what you have above, Thom, that you are compressing the views code into a single variable, $output1. Can you show me how to do something similar?

discursives’s picture

Thanks to patrickharris who wrote a comment here: http://drupal.org/node/81798#comment-150204
$my-view-php-code-output = views_build_view('embed', views_get_view('name_of_my_view'), $view_args, true, $limit);
this allows me to define a variable containing my view code so I could write:

  $tabs .= theme('tabs_tab_page', t('My Tab Title'), t($my-view-php-code-output));
  $output = theme('tabs_tabset', 'example', $tabs);
  print $output; 

also, I shoudl say that I got an error until i added $view_args = array(); before the first views_build_view so put that at the top!

thomjjames’s picture

Hi,

don't know if you've sorted it, but i didn't use views at all on my site, i didn't know anything about views when i made the site so it's all custom PHP in the modules that pulls the info out the database.

someone else will hopefully help you with the views, i'm fairly new to it too.

cheers
Tom
______________________________________________
http://adrenalinehub.com/thomjjames - Action Sports Community
http://www.tomswebstuff.com
http://edgecreations.co.uk

______________________________________________
https://tomswebstuff.com

mrbert’s picture

How do I get a view (popular_alltime) in a jtools tab? The code below gives me error

   
  $tabs .= theme('tabs_tab_page', t('Popular News'), t($popular_alltime));
  $tabs .= theme('tabs_tab_page', t('Popular Blogs'), t($popular_allblog));
  $output = theme('tabs_tabset', 'example', $tabs);
  print $output;

Griffonia | Voacanga Africana

toma’s picture

Hi

i try to make this example to work, but it still give errors

Fatal error: Only variables can be passed by reference in /home/web/site/includes/common.inc(1342) : eval()'d code on line 2

Can you please post your complete solution, i follow your instruction but still get errors

Thanks

glassman’s picture

Awesome Tom!

Are you for Hire? :)

Now that you have done one, how long to you think it would take to do a second one?

thomjjames’s picture

Hi everyone,

quick update on the site.

we're (well i am) working on updating to Drupal 5, wasn't sure if i was going to update or not but the CSS preprocessor and the introduction of jQuery are too much of a draw!
Also started working on a new theme for the site, we hope all of this well take the site to a new level!

i'll keep this updated as the update evolves.

cheers
Tom
______________________________________________
http://adrenalinehub.com/thomjjames - Action Sports Community
http://www.sustravel.co.uk - Sustainable Travel Magazine
http://edgecreations.co.uk

______________________________________________
https://tomswebstuff.com

cyvan’s picture

But can you confirm us that using Drupal was a better idea than writing your own cms ?

thomjjames’s picture

Definately, timewise and flexibility wise especially. It would have taken me even longer without drupal.

cheers
Tom

______________________________________________
http://adrenalinehub.com/thomjjames - Action Sports Community
http://www.sustravel.co.uk - Sustainable Travel Magazine
http://edgecreations.co.uk

______________________________________________
https://tomswebstuff.com

patchak’s picture

Hi Tom,

How did you manage to insert those javascript tabs in blocks?? Is it the same code that for a tabbed page??

Also, did you use views to build that really cool community page??

Thanks
Patchak

thomjjames’s picture

Hi,

It's all custom coding i'm afraid, abit hacky really just coded the tabs into the theme nothing special. In my Drupal 5 update i'm planning to work the tabs into a block, let you know how that goes.

Again the community page is just custom coding into the theme like the code above.

hope that helps
Tom

______________________________________________
http://adrenalinehub.com/thomjjames - Action Sports Community
http://www.sustravel.co.uk - Sustainable Travel Magazine
http://edgecreations.co.uk

______________________________________________
https://tomswebstuff.com

911’s picture

Hi Tom,

Just want to give you some feedback/suggestion to your great Site. I Tried to contact you with the Contact form on your AdrenalineHub Profile Page (member 911) but I didnt gat a response from you.

So I have testet a little around, uploading videos an pictures and so on. I love the site! :)

I just found a little CSS bug. If I am viewing anybodys Profile, the main menu color is not displayed correct. It is light grey (with the white font) instead of the darker grey it is normally. This is only a Firefox Problem (I am using FF 2.0), in IE it seems to be ok.
And my Age is not displayed correct?! In my Profile it makes me 1 Jear older!?

And i want to suggest a rating system (point system) for the videos/images. So Users can rate the Pics/videos. A views Counter would be nice too. So you can make other features for the overview like: top ratet and most viewed! I think this will improve the video/image gallery quite a lot.

Best Regards

Casper3’s picture

Hey man, great looking and working site. I'm actually going to extract some videos from my cam of me doing nice and dangerous things on my mountain bike to drop it up there. But--I do have a few questions I was hoping you could help me out with.

1) I am trying to create small site for the group of people I work with so that they could each create their own homepage. Have thumbnail on it. Some content. A video and images. I realize this is very much like your site and now using drupal for a couple weeks I have setup a video module that allows users to post videos but the videos are separate from the content and every new video/image is a new post. --BASICALLY what I am asking is how did you manage to group all these things into one "category/group/homepage"

2) What are the possibilities of getting your image/video module (even with bugs) I am willing to pay you for your work as I am an art director for interactive advertising I get front end stuff and basics of backend but I think the real tweaking needs to go to those who can do it.

theghost3 AT gmail .com

fax8’s picture

Hi tom,

would you share the improvements you did on the video module?
I'm interested in the videoEgg feature and I really would like to add to my module...

We already have some development on it: http://drupal.org/node/88198

Fabio

------------
www.varesano.net - Fabio Varesano Personal Homepage

tristonash’s picture

I must say, that looks impressive!

alvin’s picture

Great site! The user profile page is what I'm looking for!

Short URL like this http://adrenalinehub.com/thomjjames instead of http://adrenalinehub.com/user/thomjjames. Which module you used for the user profile? Usernode?

And how do you create the link "United Kingdom" to http://adrenalinehub.com/community/search/country/United+Kingdom in the profile page? And the link to search users by gender, city and main sport?

thomjjames’s picture

Hi Alvin,

the short URLs are simply done by the pathauto module, by default it puts user/ in front of the username but you can remove on the settings page.

The country links on adrenaline hub are done with a custom search module i made, but this can also be done with the profile module which is now in core.
when creating a profile field i believe you just input a "Page title" in the box provided and i think that should do it.

cheers
Tom
______________________________________________
http://adrenalinehub.com/thomjjames
http://www.tomswebstuff.com

Latest projects:
http://www.blogyoursprog.com
http://autoconcourse.com

______________________________________________
https://tomswebstuff.com

Amix’s picture

Hi, i would to know what module are you using for the Whos new with avarter pictures?

thomjjames’s picture

Hi,

the whosnew block was done by hacking away at the user.module hook_block (not recommended) but i have since made it into a small drupal 5 custom module to save any core hacks. the avatars were done with a cool script called phpThumb (http://phpthumb.sourceforge.net/) but in the drupal 5 version i made i've set it to use imagecache.

UPDATE
I know i've said it before (above i think) but a fairly big overhaul of the site is in progress.
I'm nearly done upgrading to 5.2 and creating a new theme as well creating a few new features!

cheers
Tom
---------------------------
http://adrenalinehub.com
http://tomswebstuff.com
http://www.blogyoursprog.com

______________________________________________
https://tomswebstuff.com

csoak’s picture

Hi Tom,

I'm curious if your members have asked for search engine to locate other members in their particular area, by city, state, and or zip code. I'm working on a similar site for photographers and was considering that type of module for that purpose. I'm curious what you or other's might use for that purpose.

kulfi’s picture

Thanks for sharing Thom. How long did it take you to set up your super Drupal site?

thomjjames’s picture

Hi,

thanks for your kind words!
think the project took around 5 months (too long), but i kept changing the direction/idea/design of the site, so alot of the time was spent working out what i wanted the site to do.
Think development time was probably 3months, longer than i'd hoped but i learnt alot so it was worth it!

cheers
Tom
______________________________________________
http://adrenalinehub.com
http://tomswebstuff.com
http://blogyoursprog.com
http://teachyourselfdrupal.com

______________________________________________
https://tomswebstuff.com

Jade456-1’s picture

It looks great. I emailed my friend Toby to sign up. He is a Seahawks fan (don't hold that against him), avid skier and internet junkie.

Converting to Drupal!

jewell-1’s picture

This site looks great, Tom. I'm especially interested in how you set up that sort of dual navigation scheme you've got. I'm trying to set up a site with something similar - giving users links to browse/manage their own content and also browse other users' content. I'm new to Drupal so this may be easier than I think!

Can you provide any info on how you did this? Did you work within the menu system or another module, or is it custom code? How do you set the menu items to point to a uid other than the user who is currently logged in?

Any info or insight you have to offer would be much appreciated! Thanks!

-- jewell

jonathanwinn’s picture

Just wondering how you set up default images for users who don't upload one. I have a live theatre show listing site where this would be useful for folks who don't have an image to upload for their shows. I'm a Drupal and PHP newbie, so sorry if this is really obvious, but I'd love to find out how to do it.

Thanks,

Jonathan Winn
http://www.PLAY7.com

Stickle’s picture

Hi Jonathan,

To enable the "no user pic" that you would like to display you will need to enter in to your Drupal administration section and then navigate to the following section:-

Administer > User management > User Settings

If you scroll down near the bottom you will see "Default picture:" and a box where you can enter the location of your "Default Picture".

Save the configuration and you are done...

jonathanwinn’s picture

So, it's a built-in function for users. That makes sense. I'm actually a little embarrassed that I didn't see that before. :-[

The reason I was asking, though, was for a different purpose. I have a CCK image field that I would like to designate a default image for, and there's no "default" field as with the User Settings. I know this is probably not an issue that you have dealt with specifically, but if you or anyone else has any ideas, I'd love to hear.

My site is http://www.PLAY7.com, a site that lists theatre productions in Southern California, and I want to designate default images for my show listings, so a company can post a show without necessarily having their own image for it. Any suggestions greatly appreciated.

Thanks,

Jonathan

RTRTech’s picture

Hi, I really like the site. I was wondering how you got the video gallery, was that something you did when you changed the CSS of the video module around? I've been trying to find a way to do the same, but haven't been lucky.

mike.hobo’s picture

Hey, I like this site.

Can you help explain more about the custom search module you made for the user list page?

I'm really looking for this and if anyone else knows if there is a module, or give me a snippet.

ashiali’s picture

i want to have some social networking functionality in my site, kindly help me how to use user-relationship module in drupal6, or any other module in drupal6.
thx

aac’s picture

I read this post from start to end today and found that how you started one site in 2006 and now have a lot of websites. I would be interested to be in touch with you for getting help on issues which i am facing during the design/development of my first website (Could you please help me??).
I started learning web design as an interest by myself around 2 years back. I started from HTML 4.0 learning, then XHTML, CSS, Javascript, PHP and MYSQL ( both very basic) then i came to know about CMS can be very useful in creating dynamic websites. Then i came to know about Drupal and Joomla. I started with Joomla and tried it for around 1 year for my work but i was not able to achieve my desired results. So in January 2009 i started to learn drupal and now struggling with it.
Thanks!!

---~~~***~~~---
aac