How about adding a file to a profile.

Let's say I want my users to be able to upload their résumé and have it associated with their profile?

Can it be done without contrib modules? I have seen a lot of posts mixing nodefamily/nodeprofile/usernode, but I don't understand how it all ties in together.

Any pointers?
FnL

Comments

vm’s picture

create a new content type called resumes, allow the upload module to work on this content type and walla its done with no added modules. it however wouldn't be shown on the "profile"

there is no way to do that without adding modules as its not a core function in drupal.

Anonymous’s picture

VM, thanks for your answer, but I neet to have it "attached" and showing on the profile.

vm’s picture

than you don't really have a choice but to add modules to get this functionality.

could you please explain what about the modules you've tried implementing is confusing you ? so that specific answers can be given ?

Anonymous’s picture

... is missing.

So I create a content type résumé and check the "Use this content type as a nodeprofile for users". A relationship is created Parent: Usernode Child: resume.

I do I get the new content type to actually be associated with the profile to allow users to upload their resume and admins to view it?

Thanks
F

harro’s picture

Referring to the comment of showing a link to the resume - you can make your own profile template page and add a link there. If you through this thread http://drupal.org/node/35728 you can find information about this. You will need the profile.module I think.

I use a table to show values from the profile and I see no reason why you couldn't show a URL or image with a URL. A line from my newly made user_profile.tpl.php :

<tr><td class="cell_name">Roepnaam: </td><td class="cell_inhoud"><?php print $user->profile_roepnaam ?></td></tr>

Where profile_roepnaam is the name of the value in the profile table (you can make up this name yourself). So you could replace this by:

<a href="<?php print $user->profile_cv_url ?>">View this guy's resume</a>

and then of course you need to link to where the resume is uploaded and make the profile variable "profile_cv_url".

Hope this helps a bit...

Bya,

Harro

arindamghatak794’s picture

Say you are trying to upload your resume onto your "My Account" page, do this: (I am doing it for version 4.7. Other versions should be quite similar)

1. Create a content type called content_resume using CCK with a file upload field (you can add other fields too of course if you want...i didn't, since I wanted just resume upload)

2. Go to admin -> settings -> content type and configure it as you want. If its a resume and you don't want your users to upload more than one, then you can just mark it as a node profile and restrict its population to 1.

3. Go to Admin -> blocks -> Add block and choosing the input format as php and choosing the title as My Resume (or whatever you like), paste the below code:

<?php
  $nblimit = 10; // max nodes to show, edit this value

  // Get the user id
  $uid = arg(1);

  if (is_numeric($uid)) {
    // SQL query to retrieve the nodes created by the user
    $query = "
      SELECT   created,
               title,
               nid,
               changed,
               status,
               type
      FROM     {node}
      WHERE    type='content_resume' AND uid   ='". db_escape_string($uid) ."'
      AND      status=1
      ORDER BY changed DESC
    ";

    // Execute the query while limiting the number of results
    $result = db_query_range($query, 0, $nblimit);

    // Initializes the rows
    $rows = array();

    // Loop over each found nodes
    while ($node = db_fetch_object($result)) {
      // Add a row to our table
      $rows[] = array(
        l($node->title, 'node/'. $node->nid)
      );
    }

    // Ask Drupal to theme our table
    return theme('table', $headers, $rows);
  }
?>

4. Configure the block so that it displays only on the "my accounts" page by selecting Display on only listed pages and typing user/* in the text box.

5. Display the box as content or sidebar (whatever you like)

6. For Drupal 4.6 and 5.x versions, you can go to http://drupal.org/node/63965 and make the necessary modifications to the above code.

In this way, you can upload files, pictures and whatever else you want on your "My Account" page.

www.MyResearchFunds.com
The World's Fastest Growing Network of Researchers